
function isProper(string) 
{ //checks strings for invalid characters
   if (!string) return false;
   var iChars = "*|\":<>[]{}\;@%!$^";

   for (var i = 0; i < string.length; i++) 
   {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
   }
   return true;
}


function ValidateNumber(form)
{
   var val = parseFloat(form.value)
   
   if (isNaN(val))
	 {
		alert(" Value must be a number.\n Please do not include commas or periods.");
		form.value = '0';
		form.focus();
		return false;
	}
	if (val < 0)
	{
		alert("Number cannot be less than zero.");
		form.value = '0';
		form.focus();
		return false;
	}
		
}

function isNumber(sValue)
{  //checks for all numbers
	var ret;
	var i;
	for (i=0; i <= sValue.length; i++)
	{
		ret = isNaN(sValue.slice(i,i+1));
		if (ret == true)
			return false ;
	}
	return true;
}


function ValidateEmail(email)
{
	var a;
	var i;
	var w;
	var x;
	var y;
	var z;
	var v;
	var u;
	var t;
	var s;
	var ichars;
	if (email)
	{
		w = email.length - 1;
		x = email;
	}
	y = x.indexOf("@",0)
	z = x.indexOf(".",y)
	v = x.indexOf(".",y-1)
	u = x.indexOf("@",y+1)
	t = x.indexOf(".",0)
	s = x.indexOf(".",t+1)
	//First I check for invalid characters
	ichars = "~`!#$%^&*()=+|]}[{;:'?,<>*";
	for (i=0; i<=w; i++) 
	{
		if (ichars.indexOf(x.charAt(i)) != -1)
		{
			alert ('The Email Address that you entered contains invalid characters. \nPlease re-enter.')
			return false;
		}
	}
	
	//I check for White spaces
	if((x.indexOf(" ",0)==-1)&&(x.indexOf("@_")))
	{	//Then I check to see if the @ sign and the period is present AND they are not the first character and it not duplicate
		if((y!=-1)&&(y!=0)&&(z!=-1)&&(u==-1))
		{   //Now we check to see if the email address is the form of "jorge@.com"
			if((z-y!=1)&&(x.indexOf("..",0)==-1))
			{	//We check to see if the email addres is the form of "jorge.@hello.net"
				if((y>v)||(t==s+1))
				{
					alert('Please provide a valid e-mail address.');
					return false;
				}
				//Lastly we check to see if the period is the last part of the address given
				if(z != w)
				{}
				else
				{
					alert('Please provide a valid e-mail address.');
					return false;
				}
			}
			else
			{
				alert('Please provide a valid e-mail address.');
				return false;
			}
		}
		else 
		{
			alert('Please provide a valid e-mail address.');
			return false;
		}
	}
	else 
	{
		alert('Please remove any blank spaces from the email address.');
		return false;
	}
	//formsubmitted = 1;
	//document.all.Next.disabled = true;
return true;
}



function verifyInput(form)
{ // Verify input strings 
	
	if (form.FName.value.length==0)
	{
		alert("Please enter your First Name.");
	   	form.FName.focus();
		return false;

	}		
	else if (isProper(form.FName.value)==false)
	{
		alert("Your name contains invalid characters. Please re-enter.");
	   	form.FName.focus();
		return false;
	}	
	
	if (form.LName.value.length==0)
	{
		alert("Please enter your Last Name.");
	   	form.LName.focus();
		return false;
	}
	else if (isProper(form.LName.value)==false)
	{
		alert("Your last name contains invalid characters. Please re-enter.");
	   	form.LName.focus();
		return false;
	}	

	
	if (form.State.value.length==0) 
	{
		alert("Please select a State.");
	   	form.State.focus();
		return false;
	}
		
	
	
	if (form.HomeAreaCode.value.length==0)
	{
		alert("Please enter your Area Code.");
	   	form.HomeAreaCode.focus();
		return false;
	}
	else (form.HomeAreaCode.value.length==0)
	{   
		if(isNumber(form.HomeAreaCode.value)==false) 
		{	alert("The Area Code must be all numbers. Please re-enter.");
	   		form.HomeAreaCode.focus();
			return false;
		}	
		if (form.HomeAreaCode.value.length!=3)
		{	alert("The Area Code must be 3 digits. Please re-enter.");
	   		form.HomeAreaCode.focus();
			return false;
		}
	}
			
	if (form.HomePhone.value.length==0)
	{
		alert("Please enter your Phone Number.");
	   	form.HomePhone.focus();
		return false;
	}	
	else if (form.HomePhone.value.length!=0)
	{	
		if(isNumber(form.HomePhone.value)==false) 
		{	alert("The Phone Number must be all numbers. Please re-enter.");
	   		form.HomePhone.focus();
			return false;
		}	
		if (form.HomePhone.value.length!=7)
		{	alert("The Phone Number must be 7 digits. Please re-enter.");
	   		form.HomePhone.focus();
			return false;
		}
	}
	
	
	if (form.Email.value.length==0)
	{	
		alert("Please enter your email address.");
		form.Email.focus();
		return false;
	}
	
	
	if (form.Email.value.length!=0)
	{
		if (ValidateEmail(form.Email.value) == false)
		{
			form.Email.focus();
			return false;
		}	
	}
	
}




