/*
	FileName:	checkform.js
	Author:		Joe Miller - Jockey International Inc.
	Created:	4/18/2001
	Purpose:	JavaScript functions to validate values on form.
*/

//When section of phone number is complete, will set focus to next section of phone number.
function textInputCounter(field,maxlimit,direct){
	var tmp = field.value;

	if (tmp.length == maxlimit) direct.focus();
}

//Will check email value to see if follows guidelines for email correctness.
//*****Needs to be updated with better checking.*****
function validEmail(email)
{
	//*****Find all invalid characters for emails.*****
	invalidChars = "/:,;!~`^&*()"
	
	if (email == "")
	{
		return false
	}
	for (i=0; i<invalidChars.length; i++)
	{
		badChar = invalidChars.charAt(i)
		if(email.indexOf(badChar,0) > -1)
		{
			return false
		}
	}
	atPos = email.indexOf("@",1)
	if (atPos == -1)
	{
		return false
	}
	if (email.indexOf("@", atPos+1) > -1)
	{
		return false
	}
	periodPos = email.indexOf(".",atPos)
	if (periodPos == -1)
	{
		return false;
	}	
	if (periodPos+3 > email.length)
	{
		return false
	}
	return true
}

//Check all needed values for input.  If not correct, will return an alert box notifying user.  User will then have chance to correct.
//Values Checked: First_Name, Last_Name, StreetNo, StreetName, AveLnRdSt, City, Zip_Code, Phone1, Phone2, Phone3, Respond, Email_Address
function SubmitForm(pForm)
{
	respondChoice = pForm.Respond.selectedIndex
	if(pForm.Respond.options[respondChoice].value == "Letter")
	{	
		if((pForm.First_Name.value == "") || (pForm.First_Name.value == null))
		{
			alert("You must enter your first name.");
			pForm.First_Name.focus();
			pForm.First_Name.select();
			return false;
		}
		if((pForm.Last_Name.value == "") || (pForm.Last_Name.value == null))
		{
			alert("You must enter your last name.");
			pForm.Last_Name.focus();
			pForm.Last_Name.select();
			return false;
		}
		if((pForm.StreetNo.value == "") || (pForm.StreetNo.value == null))
		{
			alert("You must enter your street number.");
			pForm.StreetNo.focus();
			pForm.StreetNo.select();
			return false;
		}
		if((pForm.StreetName.value == "") || (pForm.StreetName.value == null))
		{
			alert("You must enter your street name.");
			pForm.StreetName.focus();
			pForm.StreetName.select();
			return false;
		}
		if((pForm.AveLnRdSt.value == "") || (pForm.AveLnRdSt.value == null))
		{
			alert("Do you live on an avenue, lane, street, road, etc.?  Please fill in appropriate box.");
			pForm.AveLnRdSt.focus();
			pForm.AveLnRdSt.select();
			return false;
		}
		if((pForm.City.value == "") || (pForm.City.value == null))
		{
			alert("You must enter your city.");
			pForm.City.focus();
			pForm.City.select();
			return false;
		}
		if((pForm.Zip_Code.value == "") || (pForm.Zip_Code.value == null))
		{
			alert("You must enter your zip code.");
			pForm.Zip_Code.focus();
			pForm.Zip_Code.select();
			return false;
		}
	}
	else if	(pForm.Respond.options[respondChoice].value == "Phone")
	{	
		var phone1 = parseInt(pForm.Phone1.value);
		var phone2 = parseInt(pForm.Phone2.value);
		var phone3 = parseInt(pForm.Phone3.value);
		if((pForm.Phone1.value == "") || (pForm.Phone1.value == null) || (isNaN(phone1)))
		{
			alert("You must enter a correct phone number.");
			pForm.Phone1.focus();
			pForm.Phone1.select();
			return false;
		}else if((pForm.Phone2.value == "") || (pForm.Phone2.value == null) || (isNaN(phone2)))
		{
			alert("You must enter a correct phone number.");
			pForm.Phone2.focus();
			pForm.Phone2.select();
			return false;
		}else if((pForm.Phone3.value == "") || (pForm.Phone3.value == null) || (isNaN(phone3)))
		{
			alert("You must enter a correct phone number.");
			pForm.Phone3.focus();
			pForm.Phone3.select();
			return false;
		}	
	}
	else if(pForm.Respond.options[respondChoice].value == "Email")
	{	
		if(!validEmail(pForm.Email_Address.value))
		{
			alert("You must enter a valid email address.");
			pForm.Email_Address.focus();
			pForm.Email_Address.select();
			return false;
		}
	}
	spacecount = 0;
	messagelen = pForm.Message.value.length;
	for (i=0; i<messagelen; i++)
	{
		if((pForm.Message.value.charCodeAt(i) != 32) && (pForm.Message.value.charCodeAt(i) != 13) && (pForm.Message.value.charCodeAt(i) != 10))
		{
			spacecount++;
		}
	}
	
	if((pForm.Message.value == "") || (pForm.Message.value == null) || (spacecount == 0))
	{
		alert("You must enter a message.");
		pForm.Message.focus();
		pForm.Message.select();
		return false;
	}
	return true;
}

