// Form Validation //
// Chip Medema //
// Created 01-04-07 //

// Standard RegEx Vars //
var alphaNumericOnlyRE = /^(\W)$/;
var integerOnlyRE = /^\d$/;
var fullNameRE = /^\w{1,}([ ])\w{1,}$/;
var emailRE = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
var date1RE = /^\d{1,2}\/\d{1,2}\/\d{4}$/; /* i.e. 01/02/2007 */
var ynBooleanRE = /^(Yes|No)$/;
var tfBooleanRE = /^(True|False)$/;
var multipleChoiceAnswers = /^(A|B|C|D)$/;
var phoneRE = /^\(\d{3}\) \d{3}-\d{4}$/;
var zipCodeRE = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
var memNumRE = /^(\d{6})$/;
var empNumRE = /^\d{1,}$/;

var regExLookUpTable = new Array();
	regExLookUpTable.push(null); //FNAME
	regExLookUpTable.push(null); //LNAME
	regExLookUpTable.push(null); //Address 1
	regExLookUpTable.push(null); //Address 2
	regExLookUpTable.push(null); //City
	regExLookUpTable.push(null); //State
	regExLookUpTable.push(zipCodeRE); //Zip
	regExLookUpTable.push(null); //Telephone
	regExLookUpTable.push(null); //Gender
	regExLookUpTable.push(null); //Age Group
	regExLookUpTable.push(emailRE); //Email
	regExLookUpTable.push(emailRE); //Verify Email Address
	regExLookUpTable.push(null); //Gold Handicap / Score

// Setting Up Alerts For User //
var noFillAlertStart = "Please enter a value for the field labeled";
var validationAlertArray = new Array();
	validationAlertArray.push(""); //FNAME
	validationAlertArray.push(""); //LNAME
	validationAlertArray.push(""); //Address 1
	validationAlertArray.push(""); //Address 2
	validationAlertArray.push(""); //City
	validationAlertArray.push(""); //State
	validationAlertArray.push("Please enter a proper zip code (i.e. 12345 or 12345-1234"); //Zip Code
	validationAlertArray.push("Please enter a proper telephone number (i.e. (123) 123-1234"); //Telephone
	validationAlertArray.push(""); //Gender
	validationAlertArray.push(""); //Age Group
	validationAlertArray.push("Please enter a proper email address (i.e. name@address.com"); //Email Address
	validationAlertArray.push("Please enter a proper email address for verification (i.e. name@address.com"); //Verify Email Address
	validationAlertArray.push(""); //Handicap or Score
	
	
// Functions For Form Validation //
function validate(me){
	var theTotalElements = (me.elements.length)-2; // Total Form Elements Minus The Buttons
	// alert(theTotalElements);
	for(var i = 0;i <= theTotalElements; i++){
		if(me.elements[i].title != "noCheck"){
			var theElementName = me.elements[i].name;
			var theElementValue = me.elements[i].value;
			var theElementTitle = me.elements[i].title;	
			if(theElementValue == ""){
				alert(noFillAlertStart + " " + theElementTitle);
				return(false);
			}else{
				var theRegEx = regExLookUpTable[i];
				if(theRegEx != null){
					if(!theRegEx.test(theElementValue)){
						alert(validationAlertArray[i]);
						return(false);
					}
				}
			}
		
		}
	}
	// Custom Section of Email and Verify Email Cross Checking //
	if(me.email1.value != me.email2.value){
		alert("Your email addresse's do not match up. Please check this and tyr again.");
		return(false);
	}else{
  		return(true);
  	} 
  	
}













