var dtCh= "/";
var minYear=1900;
var maxYear=1993;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strMonth=dtStr.substring(0,pos1)
	var strDay=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : mm/dd/yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter a valid date")
		return false
	}
return true
}


function checkform ( form ){
	if(form.name == "contest-form"){
// ** BIRTHDAY START **
		var dt=form.Birthdate;
		if (isDate(dt.value)==false){
			dt.focus()
			return false
			}
			// ** TEXT MESSAGE INFO **

	if (form.CellPhoneAlerts.checked && form.Mobile1.value == "") {
	alert( "Please enter a complete mobile phone number to receive SMS alerts." );
	form.Mobile1.focus();
	return false ;
	}

	if (form.CellPhoneAlerts.checked && form.Mobile1.value!= "" && form.MobileNetwork.value == "") {
	alert( "Please select your mobile network to receive SMS alerts." );
	form.MobileNetwork.focus();
	return false ;
	}

  


   		if (form.EMAIL.value == "") {
			alert( "Please enter your Email." );
    	    form.EMAIL.focus();
			return false ;
			}
		if (form.FirstName.value == "") {
			alert( "Please enter your First Name." );
			form.FirstName.focus();
			return false ;
			}
		if (form.ZipCode.value == "") {
			alert( "Please enter your Zip Code." );
			form.ZipCode.focus();
			return false ;
			}
			
// ** REQUIRED END **
		return true ;
	} else if(form.name == "tdf-form"){
// ** REQUIRED START **

			if (form.ContestAnswer[2].checked == false) {
alert("Your answer is wrong...try again!");
return false;
}

			if (form.EMAIL.value == "") {
alert("Please enter your email address");
form.EMAIL.focus();
return false;
}

			if (form.FirstName.value == "") {
alert("Please enter your first name");
form.FirstName.focus();
return false;
}

			if (form.LastName2.value == "") {
alert("Please enter your last name");
form.LastName2.focus();
return false;
}

			if (form.Address1.value == "") {
alert("Please enter your address");
form.Address1.focus();
return false;
}

			if (form.City.value == "") {
alert("Please enter your city");
form.City.focus();
return false;
}

			if (form.State.selectedIndex == "0") {
alert("Please choose your state");
form.State.focus();
return false;
}

if (form.ZipCode.value == "") {
alert("Please enter your zipcode");
form.ZipCode.focus();
return false;
}




// ** REQUIRED END **
		return true ;
	} else if(form.name == "email-form"){
// ** REQUIRED START **
			if (form.EMAIL.value == "") {
alert("Please enter your email address")
form.EMAIL.focus();
return false;
}
			if (form.CellPhoneAlerts.checked && (form.Mobile1.value == "" || form.Mobile2.value == ""  || form.Mobile3.value == ""  )) {
alert( "Please enter a complete mobile phone number to receive SMS alerts." );
form.Mobile1.focus();
return false ;
}

			if (form.Mobile1.value!= "" && form.MobileNetwork.value == "") {
alert( "Please select your mobile network to receive SMS alerts." );
form.MobileNetwork.focus();
return false ;
}

	{ var mobile
		mobile =document.getElementById("Mobile1").value + document.getElementById("Mobile2").value + document.getElementById("Mobile3").value; 
		document.getElementById("Mobile").value=mobile; 
	} 	
			
// ** REQUIRED END **

		return true ;
	} else if(form.name == "2010-vip-form"){
// ** REQUIRED START **
var x = form.EMAIL.value;
var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
			
if (form.EMAIL.value == "") {
alert( "Please enter your Email." );
form.EMAIL.focus();
return false ;
}
if (!filter.test(x)){
alert('Please Enter a Valid Email Address formatted as you@domain.com');
form.EMAIL.focus();
return false ;
}

if (form.FirstName.value == "") {
alert( "Please enter your First Name." );
form.FirstName.focus();
return false ;
}
if (form.LastName.value == "") {
alert( "Please enter your Last Name." );
form.LastName.focus();
return false ;
}
if (form.State.selectedIndex == "0") {
alert("Please choose your state");
form.State.focus();
return false;
}
if (form.ZipCode.value == "") {
alert( "Please enter your Zip Code." );
form.ZipCode.focus();
return false ;
}
	
if ((form.SalesInterestTicketPlan.checked && form.MainPhone.value == "Phone xxx-xxx-xxxx")) {
	alert( "Please enter your phone number." );
	form.MainPhone.focus();
	return false ;
}

		
// ** REQUIRED END **


	return true;
	}else if(form.name == "form"){
// ** REQUIRED START **

if ((form.Mobile1.value == "" || form.Mobile2.value == ""  || form.Mobile3.value == ""  )) {
alert( "Please enter a complete mobile phone number to receive SMS alerts." );
form.Mobile1.focus();
return false ;
}
if ((form.Email.value == "")) {
alert("Please enter your email address")
form.Email.focus();
return false;
}

if (form.Mobile1.value!= "" && form.MobileNetwork.value == "") {
alert( "Please select your mobile network to receive SMS alerts." );
form.MobileNetwork.focus();
return false ;
}
	{ var mobile
		mobile =document.getElementById("Mobile1").value + document.getElementById("Mobile2").value + document.getElementById("Mobile3").value; 
		document.getElementById("Mobile").value=mobile; 

	} 	
		
// ** REQUIRED END **
	return true;
	}else if(form.name == "volunteer-form"){
// ** REQUIRED START **

if ((form.Stage.checked || form.Contest.checked || form.ContestAnswer.checked || form.ContestAnswer2.checked  || form.ContestAnswer3.checked || form.ContestAnswer4.checked || form.ContestAnswer5.checked || form.ContestAnswer6.checked || form.SurveyAnswer1.checked || form.SurveyAnswer2.checked || form.SurveyAnswer3.checked || form.SurveyAnswer4.checked || form.SurveyAnswer5.checked  || form.SurveyAnswer6.checked )) {
} else { alert( "Please check at least one stage you're interesting in volunteering for" );
form.Stage.focus();
return false ;
}
		if (form.EMAIL.value == "") {
			alert( "Please enter your Email." );
			form.EMAIL.focus();
			return false ;
			}
		if ("ConfirmEmail" in form && form.EMAIL.value != form.ConfirmEmail.value) {
			alert( "Please verify your Email is accurate." );
			form.EMAIL.focus();
			return false ;
		}
		if (form.FirstName.value == "") {
			alert( "Please enter your first name." );
			form.FirstName.focus();
			return false ;
			}
		if (form.LastName.value == "") {
			alert( "Please enter your Last Name." );
			form.LastName.focus();
			return false ;
			}
		if (form.Address1.value == "") {
			alert( "Please enter your Address 1." );
			form.Address1.focus();
			return false ;
			}
		if (form.City.value == "") {
			alert( "Please enter your City." );
			form.City.focus();
			return false ;
			}
		if (form.State.value == "") {
			alert( "Please enter your State." );
			form.State.focus();
			return false ;
			}
		if (form.ZipCode.value == "") {
			alert( "Please enter your Zip Code." );
			form.ZipCode.focus();
			return false ;
			}
		if (form.MainPhone.value == "") {
			alert( "Please enter your Main Phone." );
			form.MainPhone.focus();
			return false ;
			}
		if (form.EMAIL.value == "") {
			alert( "Please enter your Email." );
			form.EMAIL.focus();
			return false ;
			}
		if (form.EmergencyContactName.value == "") {
			alert( "Please enter your Emergency Contact Name." );
			form.EmergencyContactName.focus();
			return false ;
			}
		if (form.EmergencyContactPhone.value == "") {
			alert( "Please enter your Emergency Contact Phone." );
			form.EmergencyContactPhone.focus();
			return false ;
			}
		if (form.ShirtInfo.value == "") {
			alert( "Please enter your Shirt Info." );
			form.ShirtInfo.focus();
			return false ;
			}
		if (form.PositionPref_1.value == "") {
			alert( "Please enter your Position Pref 1." );
			form.PositionPref_1.focus();
			return false ;
			}
		if (form.PositionPref_2.value == "") {
			alert( "Please enter your Position Pref 2." );
			form.PositionPref_2.focus();
			return false ;
			}
		if (form.PositionPref_3.value == "") {
			alert( "Please enter your Position Pref 3." );
			form.PositionPref_3.focus();
			return false ;
			}
		if (form.Stage.value == "") {
			alert( "Please enter your Stage." );
			form.Stage.focus();
			return false ;
			}
			
				}

			
			
else if(form.name == "breakaway-mile"){
// ** REQUIRED START **

		if (form.EMAIL.value == "") {
			alert( "Please enter your Email." );
			form.EMAIL.focus();
			return false ;
			}
		if ("ConfirmEmail" in form && form.EMAIL.value != form.ConfirmEmail.value) {
			alert( "Please verify your Email is accurate." );
			form.EMAIL.focus();
			return false ;
		}
		if (form.FirstName.value == "") {
			alert( "Please enter your first name." );
			form.FirstName.focus();
			return false ;
			}
		if (form.LastName.value == "") {
			alert( "Please enter your Last Name." );
			form.LastName.focus();
			return false ;
			}
		if (form.Address1.value == "") {
			alert( "Please enter your Address 1." );
			form.Address1.focus();
			return false ;
			}
		if (form.City.value == "") {
			alert( "Please enter your City." );
			form.City.focus();
			return false ;
			}
		if (form.State.value == "") {
			alert( "Please enter your State." );
			form.State.focus();
			return false ;
			}
		if (form.ZipCode.value == "") {
			alert( "Please enter your Zip Code." );
			form.ZipCode.focus();
			return false ;
			}
		if (form.MainPhone.value == "") {
			alert( "Please enter your Main Phone." );
			form.MainPhone.focus();
			return false ;
			}
		if (form.EMAIL.value == "") {
			alert( "Please enter your Email." );
			form.EMAIL.focus();
			return false ;
			}
		if (form.EmergencyContactName.value == "") {
			alert( "Please enter your Emergency Contact Name." );
			form.EmergencyContactName.focus();
			return false ;
			}
		if (form.EmergencyContactPhone.value == "") {
			alert( "Please enter your Emergency Contact Phone." );
			form.EmergencyContactPhone.focus();
			return false ;
			}
		if (form.ShirtInfo.value == "") {
			alert( "Please enter your Shirt Info." );
			form.ShirtInfo.focus();
			return false ;
			}
		if (form.PositionPref_1.value == "") {
			alert( "Please enter your Position Pref 1." );
			form.PositionPref_1.focus();
			return false ;
			}
		if (form.PositionPref_2.value == "") {
			alert( "Please enter your Position Pref 2." );
			form.PositionPref_2.focus();
			return false ;
			}
		if (form.PositionPref_3.value == "") {
			alert( "Please enter your Position Pref 3." );
			form.PositionPref_3.focus();
			return false ;
			}
		if (form.Stage.value == "") {
			alert( "Please enter your Stage." );
			form.Stage.focus();
			return false ;
			}			
		}
	}
	
	

