// function: TabNext
// Author: Matt Kruse <matt@mattkruse.com>
// WWW: http://www.mattkruse.com/
var phone_field_length=0;
function TabNext(obj,event,len,next_field) {
	if (event == "down") {
		phone_field_length=obj.value.length;
		}
	else if (event == "up") {
		if (obj.value.length != phone_field_length) {
			phone_field_length=obj.value.length;
			if (phone_field_length == len) {
				next_field.focus();
				}
			}
		}
	}

function formCheckIt(){

	// try to perform operation
	try {	
	
		var FirstName = document.frmSignUp.FName.value;
		var LastName = document.frmSignUp.LName.value;
		var Address = document.frmSignUp.Address.value;
		var City = document.frmSignUp.City.value;
		var State = document.frmSignUp.State.value;
		var chkzipcode = document.frmSignUp.Zip.value;
		var Email = document.frmSignUp.Email.value;
		var chkphonenumber = document.frmSignUp.Phone1.value + document.frmSignUp.Phone2.value + document.frmSignUp.Phone3.value;
		var Month = document.frmSignUp.Month.value;
		var Day	= document.frmSignUp.Day.value;
		var Year = document.frmSignUp.Year.value;
		var Gender = document.frmSignUp.Gender.value;
		var SSV = document.frmSignUp.CityOfBirth.value;
		//var SSV = document.frmSignUp.Maiden.value;
		
		var msg = '';
		var phonenumberL = chkphonenumber.length;
		var zipcodeL = chkzipcode.length;
		
		if (FirstName == '') var msg = msg + "\n First Name is required.";		
		if (LastName == '') var msg = msg + "\n Last Name is required.";
		if (Address == '') var msg = msg + "\n Address is required.";		
		if (City == '') var msg = msg + "\n City is required.";	
		if (State == '') var msg = msg + "\n State is required.";		
		if (chkzipcode == '') {
			var msg = msg + "\n Zip code does not have a valid format.";
		} else {
			if (!IsNumeric(chkzipcode)) var msg = msg + "\n Zip code only allows digits.";
			if (zipcodeL != 5) var msg = msg + "\n Zip code requires 5 digits.";
		}		
		if (chkphonenumber == '') {
			var msg = msg + "\n Phone number does not have a valid format.";
		} else {
			if (!IsNumeric(chkphonenumber)) var msg = msg + "\n Phone number only allows digits.";
			if (phonenumberL != 10) var msg = msg + "\n Phone number requires 10 digits.";
		}
		if (Email == '') {
			var msg = msg + "\n Email is required.";
		} else {
			if ( echeck(Email) == false ) var msg = msg + "\n Email format is invalid.";
		}		
		if (Month == '' || Day == '' || Year == '') var msg = msg + "\n Birthday is required.";
		if (Gender == '') var msg = msg + "\n Gender is required.";		
		if (SSV == '') var msg = msg + "\n City of birth is required.";

		if (msg != ''){
			var msg = "The following items need to be reviewed: \n" + msg;
			alert(msg);
			return false;
		}else{
			disableExitPop = true;
			return
		}
	
	}

	// if error is found, then display error and stop processing
	
	catch(err)
	{
	   var txt="There was an error on this page.\n\n"
	   txt+="Error description: " + err.description + "\n\n"
	   txt+="Click OK to continue.\n\n"
	   alert(txt)
	   return false;
	}
	
}


function echeck(str) {

	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	
	if (str.indexOf(at)==-1) return false;
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) return false;
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) return false;
	if (str.indexOf(at,(lat+1))!=-1) return false;
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) return false;
	if (str.indexOf(dot,(lat+2))==-1) return false;
	if (str.indexOf(" ")!=-1) return false;
	return true;
}

function IsNumeric(sText) {
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;

	for (i = 0; i < sText.length && IsNumber == true; i++) { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) IsNumber = false;
	}  
	return IsNumber;
}