
function check(form)
	{
	var doneYet = true;
	// splash page
	if (doneYet && form.firstName) doneYet = doneYet && textBox(form.firstName, "Please enter your first name.");
	/* if (doneYet && form.lastName) doneYet = doneYet && textBox(form.lastName, "Please enter your last name."); */
	if (doneYet && form.zipCode) doneYet = doneYet && textBox(form.zipCode, "Please enter a valid zip code.");
	if (doneYet && form.email) doneYet = doneYet && email(form.email, "Please enter a valid email address.");
	if (doneYet && form.privacyPolicy) doneYet = doneYet && iReadTheRules(form.privacyPolicy, "Please acknowledge that you have read the privacy policy.");
	if (doneYet) doneYet = jobFunction(form, 8, "Please check a job function");
	
	/*  for(x=0;x<form.jobFunction.length;x++) { if (form.jobFunction[x].checked) { alert(form.jobFunction[x].value) }  }  */
	return doneYet;
	}

// ----------------------------

// text box
function textBox(form, message)
	{
	if ( form.value.length == 0 ) { alert(message); form.focus();  return false; }
	return true;
	}

// email
function email(form, message)
	{
	var filter = /^[A-Za-z0-9][A-Za-z0-9\_\-\.]*\@[A-Za-z0-9][A-Za-z0-9\_\-\.]*\.[A-Za-z]{2,5}$/;
	var filter2 = /(\.\.+)|(\@\@+)|(\_\_+)|(\-\-+)/;
	if( (!filter.test( form.value ))  || ( filter2.test( form.value )) ) { alert(message); form.focus(); return false; }
	return true;
	}

// check validity of first zipcode only zip
function zipCode(form, form2, message)
	{	
	// usa zip code format: ##### or #####-####
	var filterUS = /^[0-9]{5}(\-[0-9]{4})?$/;
	// canadian zip code format: X#X #X# or X#X#X# or X#X-#X#
	var filterCANADA = /^[A-z][0-9][A-z][ -]?[0-9][A-z][0-9]$/;       
	if( !filterUS.test( form.value ) && !filterCANADA.test( form.value ) ) { alert( message ); form.focus(); return false; }
	return true;
	}

// onblur check zip; if first zip code valid, populate second zip field
function checkZip(form)
	{	
	// usa zip code format: ##### or #####-####
	//var filterUS = /^[0-9]{5}(\-[0-9]{4})?$/;
	// canadian zip code format: X#X #X# or X#X#X# or X#X-#X#
	//var filterCANADA = /^[A-z][0-9][A-z][ -]?[0-9][A-z][0-9]$/;       
	//if( filterUS.test( form.zipCode.value ) || filterCANADA.test( form.zipCode.value ) ) { form.zipCode2.value = form.zipCode.value; } 
	//else {form.zipCode2.value="";}
	form.zipCode2.value = form.zipCode.value;
	}

// read the rules confirmation
function iReadTheRules(form, message)
	{
	if (!form.checked) { alert(message); form.focus(); return false; }
	return true;
	}
	
function jobFunction(form, boxes, message) {
	var checkVar = false;
	for (i=0; i<boxes; i++) {
		if (document.getElementById("jobFunction"+i).checked) checkVar=true;
	}
	if (!checkVar) alert(message);
	return checkVar;
	}

