function ele(id) {
	return document.getElementById(id);
}

function trim(str) {
  return str.replace(/^\s+|\s+$/g, '');
}

function isBlank(s) {
	s = trim(s);
  
	if (s!=null && s!="undefined") {

		for (var i = 0; i < s.length; i++) { 	
			var c = s.charAt(i);
			
			if ((c != ' ') && (c != '\n') && (c != '\t')) {
				return false;
			}
		}
	} 
   
	return true;
}

function isDigit(intNum) {
	var digiCount = 0;
	var digiBoundary = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
	intNum += '';

	for(tmpIndex = 0; tmpIndex < intNum.length; tmpIndex++) {
		for(tmpIndex2 = 0; tmpIndex2 < digiBoundary.length; tmpIndex2++) {
			if (intNum.charAt(tmpIndex) == digiBoundary[tmpIndex2])
				digiCount++;
		}		
	}

	if (digiCount == intNum.length)
		return true;
	else
		return false;
}

function isEmail(str) {
	if ( str.length < 1 ) 
    return false;

	if ( (str.indexOf('@') < 1)
    || (str.indexOf('@') != str.lastIndexOf('@'))
    || (str.lastIndexOf('.') < str.indexOf('@') + 2)
    || (str.lastIndexOf('.') > str.length - 3)
    || (str.indexOf('..') > -1)
    || (str.indexOf(' ') >= 0) )
    return false;

	str = str.toLowerCase();
	var strOk = '@._-abcdefghijklmnopqrstuvwxyz0123456789\'';
	for(var i=192; i<208; i++)
	strOk = strOk + String.fromCharCode(i);
	for(var i=209; i<215; i++)
	strOk = strOk + String.fromCharCode(i);
	for(var i=217; i<222; i++)
	strOk = strOk + String.fromCharCode(i);
	for(var i=224; i<247; i++)
	strOk = strOk + String.fromCharCode(i);
	for(var i=249; i<254; i++)
	strOk = strOk + String.fromCharCode(i);
	strOk = strOk + String.fromCharCode(255);

	for ( var i = 0; i < str.length; i++ ) {
		if ( strOk.indexOf(str.charAt(i)) < 0 )
		  return false;
	}

	return true;
}

function chkSubmit(frm) {
	var frm = document.form;
	var i = 0;
	var errormsg = "The following error(s) has occured in the form:\n\n";

	if (ele('Agree').checked == false) {
		errormsg += (++i) + ". Please tick \"YES\" to receive Tissue World Magazine.\n";
	}

	if (isBlank(ele('First_Name').value)) {
		errormsg += (++i) + ". 'First Name' cannot be empty.\n";
	}
	
	if (isBlank(ele('Last_Name').value)) {
		errormsg += (++i) + ". 'Last Name' cannot be empty.\n";
	}
		
	if (isBlank(ele('Job_Title').value)) {
		errormsg += (++i) + ". 'Job Title' cannot be empty.\n";
	}

	if (isBlank(ele('Company').value)) {
		errormsg += (++i) + ". 'Company' cannot be empty.\n";
	}

	if (isBlank(ele('Address').value)) {
		errormsg += (++i) + ". 'Address' cannot be empty.\n";
	}

	if (isBlank(ele('City').value)) {
		errormsg += (++i) + ". 'City' cannot be empty.\n";
	}

	if (isBlank(ele('State').value)) {
		errormsg += (++i) + ". 'State' cannot be empty.\n";
	}

	if (isBlank(ele('Postal_code').value)) {
		errormsg += (++i) + ". 'Postal code' cannot be empty.\n";
	}
		
	if (isBlank(ele('Country').options[ele('Country').selectedIndex].value)) {
		errormsg += (++i) + ". Please select a Country.\n";
	}
		
	if (isBlank(ele('Phone').value)) {
		errormsg += (++i) + ". 'Telephone Number' cannot be empty.\n";
	}

	if (isBlank(ele('Fax').value)) {
		errormsg += (++i) + ". 'Fax Number' cannot be empty.\n";
	}

	if (isBlank(ele('Email').value)) {
		errormsg += (++i) + ". 'Email Address' cannot be empty.\n";
	} else {
		if (!isEmail(ele('Email').value)) {
			errormsg += (++i) + ". 'Email Address' is of an invalid format.\n";
		}
	}

	if (isBlank(ele('CompanyWebsite').value)) {
		errormsg += (++i) + ". 'Company Website' cannot be empty.\n";
	}

	
	if (
		ele('Q1A1').checked == false &&
		ele('Q1A2').checked == false &&
		ele('Q1A3').checked == false &&
		ele('Q1A4').checked == false &&
		ele('Q1A5').checked == false &&
		ele('Q1A6').checked == false &&
		ele('Q1A7').checked == false
	) {
		errormsg += (++i) + ". Please check your job function.\n";
	} else {
		if (ele('Q1A7').checked == true && isBlank(ele('Q1Others').value)) {
			errormsg += (++i) + ". Please specify your job function.\n";
		}
	}

	if (
		ele('Q2A1').checked == false &&
		ele('Q2A2').checked == false &&
		ele('Q2A3').checked == false &&
		ele('Q2A4').checked == false &&
		ele('Q2A5').checked == false &&
		ele('Q2A6').checked == false &&
		ele('Q2A7').checked == false &&
		ele('Q2A8').checked == false
	) {
		errormsg += (++i) + ". Please check your company primary field of business.\n";
	} else {
		if (ele('Q2A8').checked == true && isBlank(ele('Q2Others').value)) {
			errormsg += (++i) + ". Please specify what company primary field of business.\n";
		}
	}

	if (
		ele('Q3A1').checked == false &&
		ele('Q3A2').checked == false &&
		ele('Q3A3').checked == false
	) {
		errormsg += (++i) + ". Please specify what you supply to the tissue industry.\n";
	}

	if (isBlank(ele('DOBmonth').options[ele('DOBmonth').selectedIndex].value)) {
		errormsg += (++i) + ". Please select month of birth.\n";
	}

	if (isBlank(frm.captcha_input.value)) {
		errormsg += (++i) + ". Please complete the Captcha.\n";
	}
	


	if (i != 0) {
		alert(errormsg);
		return false;
	} else {
		return true;
	}
}
