// JScript source code
var whitespace = "\t\r\n"


function validate()
{
	var requiredFields = new Array("fname", "lname","address","city", "zipcode", "email");
	var fieldNames = new Array("First Name", "Last Name","Address","City","Zip Code", "Email Address");
	var missedFields = "Please enter values in the following fields:\n\n" ;
	var f = document.kidsform;
	var fieldsGood = true;

	for(var i=0; i<requiredFields.length; i++)
	{
	if(trim(f.elements[requiredFields[i]].value) == "")
	{
		missedFields = missedFields += fieldNames[i]+"\n";
		fieldsGood = false;   
	}
	} 
	
    
	if(fieldsGood == true)
	{
	  if(!isZip(trim(f.zipcode.value)))
	  {
	   alert("The zip code entered is invalid");
	   f.zipcode.focus();
	   return false;
	  }
	  if(!isEmail(f.email.value))
	  { 
		alert("The email address entered is invalid");
		f.email.focus();
		return false;
	  } //end isEmail if statement
     return true;
	}
	else
	{
	 alert(missedFields);
	 f.fname.focus();
	 return false;
	}
 }

function trim(s)
{//trims whitespace and carrige returns from beginnings and ends values
 s = s.replace(/\s*$/, "");
 s = s.replace(/^\s*/, "");
 return s; 
}//end function trim

function isEmail(x)
{
 if((x == "") || (x == null)){return false;}
	      
 if(hasWhitespace(x)){return false;}
	      
 var i = 1;
 while((i<x.length) && (x.charAt(i) != "@"))
 {
   i++;
 }
    
 if((i>x.length) || (x.charAt(i) != "@"))
 {
  return false;
 }
 else
 {
  i += 2;
 }
	      
 while((i<x.length) && (x.charAt(i) != "."))
 {
   i++;
 }
	      
 if((i>x.length) || (x.charAt(i) != "."))
 {
  return false;
 }
 else
 {
  return true;
 }
}//end isEmail function

function hasWhitespace(x)
{     	      
 for(var i=0;i<x.length;i++)
 {
  var c = x.charAt(i)
  if(whitespace.indexOf(c) == -1){return false;}
 }
 
 return true;
}//end whitespace function

function isZip(z)
 {
  var zipPattern = /\d{5}(-\d{4})?/;
  result = z.match(zipPattern);
  if (result != null){return true;}
 }//end function isZip
 
