﻿
function ValidateForm() {

		if (CodeNumber.value == 0) {
			alert("Please input the numbers from the image, thank you.");
			CodeNumber.focus();
			return false;
		}
		if (CodeNumber.value.length < 6) {
			alert("Need all six numbers from the image, thank you.");
			CodeNumber.focus();
			return false;
		}
		if (FirstName.value == 0) {
			alert("Please provide your first name, thank you.");
			FirstName.focus();
			return false;
		}
		if (isLegalChar(FirstName.value)) {
			alert("You have illegal characters in your first name!");
			FirstName.focus();
			return false;
		}
		if (LastName.value == 0) {
			alert("Please provide your last name, thank you.");
			LastName.focus();
			return false;
		}
		if (isLegalChar(LastName.value)) {
			alert("You have illegal characters in your last name!");
			LastName.focus();
			return false;
		}
		
		if(CallMe.checked == true) {
			if(Phone.value.length < 1) {
				alert("You've check the Call Me box but have not provided a phone number!");
				Phone.focus();
				return false;
			} else {
				 if( Phone.value.length < 4) {
				 	alert("The phone number field requires 4 digits.");
					Phone.focus();
					return false;
				 }
				 if (AreaCode.value.length < 3) {
					alert("The area code number field requires 3 digits.");
					AreaCode.focus();
					return false;
				 }
				 if (Prefix.value.length < 3 ) {
					alert("The phone prefix number field requires 3 digits.");
					Prefix.focus();
					return false;
				}
			}
		}
		
		if (Questions.value.length > 0 && isLegalChar(Questions.value)) {
			alert("You have illegal characters in your Question/Comments\n the following are not allowed: {}[]*<_>%;");
			Questions.focus();
			return false;
		}
		
		if (Email1.value.length == 0 ) {
			alert("Email address is required!");
			Email1.focus();
			return false;
		} else if (Email2.value.length == 0 ) {
			alert("Email address is required!");
			Email2.focus();
			return false;
		} else if (Email1.value != Email2.value) {
				alert("Email addresses do not match!");
				Email1.focus();
				return false;
		} else {	
			if (!isEmail(Email1)) {
				return false;
			} else {
				document.cookie = "email=" + Email1.value + ";Name=" + FirstName.value + " " + LastName.value;
				return true;
			}
		}
}

 function isEmail(ele)  {	
	var eMailPat = new RegExp("^([0-9a-zA-Z]+[-._+&amp;])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}$", "g");
 	var result = eMailPat.test(ele.value); 	
	if (!result){
		alert("Please check your email address,\n it does not format correctly.");
		//alert("bad address " + "\n" + ele.value + "\n" + eMailPat + "\n" + RegExp.input);
		ele.focus();
	}
	return result;
}

function IsNumeric(ele) {
	var Numbers = /\d+/;
	var chr = ele.value.substr(ele.value.length-1, 1);
	if (chr.length == 1 && chr.search(Numbers) == -1) {
		alert("This field can only accept numbers! ");
		ele.value = "";
		ele.focus();
		return false;
	}
}

 function isLegalChar(s) {	
	var vIllegals = /[\}\{\[\]\*\\<%>;_]/;
	if(s.search(vIllegals) == -1){
		return false;
	} else {
		return true;
	}
}

