function validateFormOnSubmit(){
	var theForm=document.getElementById("contactus");
	var reason="";
	
	reason+=validateEmail(theForm.email);
	reason+=validateEmpty(theForm.lastname);
	reason+=validateEmpty(theForm.firstname);

	if(reason!=""){
		alert("Some fields need correction:\n"+reason);
		return false;
	}
	theForm.submit();
}

function validateEmpty(fld){
	var error="";
	if(fld.value.length==0){
		fld.style.background='Red';
		error="The required field "+fld.name+" has not been filled in.\n"
		fld.focus();
	}
	else{
		fld.style.background='White';
	}
	return error;
}

function trim(s){
	return s.replace(/^\s+|\s+$/,'');
}

function validateEmail(fld){
	var error="";
	var tfld=trim(fld.value);
	var emailFilter=/^[^@]+@[^@.]+\.[^@]*\w\w$/;
	var illegalChars=/[\(\)\<\>\,\;\:\\\"\[\]]/;
	
	if(fld.value==""){
		fld.style.background='Red';
		error="You didn't enter an email address.\n";
		fld.focus();
	}
	else if(!emailFilter.test(tfld)){
		fld.style.background='Yellow';
		error="Please enter a valid email address.\n";
		fld.focus();
	}
	else if(fld.value.match(illegalChars)){
		fld.style.background='Yellow';
		error="The email address contains illegal characters.\n";
		fld.focus();
	}
	else{
		fld.style.background='White';
	}
	return error;
}
