 var lastField;
 var lastFieldIsValid = true;
   

//US Zip Code validation:
//This requires the user to enter either a 5 or a 9 digit Zip code in following respective formats  ##### OR #####-####

   function UsZipCodeFormat(formfield){
    var currentValue = new String(formfield.value);
    var id = formfield.id;
    var currentStrippedValue = ReplaceAll(currentValue,"-","");  //remove the dashes from the zip code for testing
    
    lastField = id;
    if(currentStrippedValue.length > 0)
    {      
     if(isNaN(currentStrippedValue)){
      alert("Please Enter Numeric Values Only");  //Make sure the zip code is numeric only
      formfield.value = "";
      formfield.select();
      lastFieldIsValid = false;
      return;
     }else{
      if(currentStrippedValue.length < 5 || currentStrippedValue.length > 9)  //Make sure zip code is 5 or 9 numbers long
      {
       alert("Zip Code Must Be 5 (#####) or 9 (#####-####) Digits Long");
       formfield.select();
       lastFieldIsValid = false;
       return;
      }
      else
       lastFieldIsValid = true;  //If requirements are met, the field is valid
      
      if((currentStrippedValue.length < 9 && currentStrippedValue.length > 5) || currentStrippedValue.length == 5)  //Display the string correctly for 5 or 9
       formfield.value = currentStrippedValue.substring(0,5);
      else
       formfield.value = currentStrippedValue.substring(0,5) + "-" + currentStrippedValue.substring(5,9);
     }
    }
   }

//US Telephone Number validation:
//This requires the user to enter their phone number and Area code in following format (###) ###-####

   function PhoneNumberFormat(formfield){

    var currentValue = new String(formfield.value);
    var id = formfield.id;
	
    var currentStrippedValue = ReplaceAll(ReplaceAll(ReplaceAll(ReplaceAll(currentValue,"-","")," ",""),"(",""),")","");  //strip the dashes or parentheses from phone number
    lastField = id;
    
    if(currentStrippedValue.length > 0)
    {      
     if(isNaN(currentStrippedValue)){
      alert("Please Enter Numeric Values Only (### ###-####)");  //Make sure only numbers are entered
      formfield.value = "";
      formfield.select();
      lastFieldIsValid = false;
      return false;
     }else{
      if(currentStrippedValue.length != 10)  //Verify that the area code and telephone number are entered
      {
       alert("Phone # Must Be 10 Numbers Long (### ###-####)");
       formfield.select();
       lastFieldIsValid = false;
       return false;
      }
      else
      {
       lastFieldIsValid = true;
       formfield.value = "(" + currentStrippedValue.substring(0,3) + ") " + currentStrippedValue.substring(3,6) + "-" + currentStrippedValue.substring(6,10); //Format the string for correct display
	   return true;
      }
     }
    }
   }

   

 //Used to simulate ReplaceAll and not just the first Instance of the item to be replaced
   function ReplaceAll(checkMe,toberep,repwith){
    var temp = checkMe;
    var i = temp.indexOf(toberep);
    while(i > -1){ //Loop through and replace all instances
     temp = temp.replace(toberep, repwith);
     i = temp.indexOf(toberep);
    }
    return temp;
   }

var reEmail=/^[0-9a-zA-Z_\.-]+\@[0-9a-zA-Z_\.-]+\.[0-9a-zA-Z_\.-]+$/ 
function checkEmail(val){
 	if(!reEmail.test(val))
	{
		
		return false;
	}
	return true;
}

//For checking Null values
function isNull(aStr)
	{
		var index;		
		for (index=0; index < aStr.length; index++)
			if (aStr.charAt(index) != ' ')
				return false;
		return true;
	}


function registration()
	{
	if(isNull(document.getElementById('firstName').value))
				{
					alert('Please enter first name.');
					document.getElementById('firstName').focus();
					return false;
					
				}
	if(isNull(document.getElementById('lastName').value))
				{
					alert('Please enter last name.');
					document.getElementById('lastName').focus();
					return false;
					
				}

	if(isNull(document.getElementById('address').value))
				{
					alert('Please enter address.');
					document.getElementById('address').focus();
					return false;
				}
	
	if(isNull(document.getElementById('city').value))
				{
					alert('Please enter city.');
					document.getElementById('city').focus();
					return false;
				}
	
	if(isNull(document.getElementById('state').value))
				{
					alert('Please enter state.');
					document.getElementById('state').focus();
					return false;
				}
	
	if(isNull(document.getElementById('zip').value))
				{
					alert('Please enter zip.');
					document.getElementById('zip').focus();
					return false;
				}

	if(isNull(document.getElementById('formfield').value))
				{
					alert('Please enter phone.');
					document.getElementById('formfield').focus();
					return false;
				}
				else{
					if(PhoneNumberFormat(document.getElementById('formfield')))
					{
						if(isNull(document.getElementById('email').value))
									{
										alert('Please enter your e-mail address.');
										document.getElementById('email').focus();
										return false;
									}
						
						if(!checkEmail(document.getElementById('email').value))
								{
									alert('Please enter your valid email address.');
									document.getElementById('email').focus();
									return false;
								}

						if(isNull(document.getElementById('age').value))
									{
										alert('Please enter age.');
										document.getElementById('phone').focus();
										return false;
									}
						
						if(!isNumeric(document.getElementById('age').value))
									{
										alert('Please enter numeric only in Age.');
										document.getElementById('phone').focus();
										return false;
									}
					} else {
						return false;
					}
				}
	
		return true;
	}

function isNumeric(val)
	{
		var reg = new RegExp("^[-\.0-9]{1,}$");
		return reg.test(val);
	}


function membership()
	{

	if(isNull(document.getElementById('nameuser').value))
				{
					alert('Please enter name.');
					document.getElementById('nameuser').focus();
					return false;
					
				}

	if(isNull(document.getElementById('address').value))
				{
					alert('Please enter address.');
					document.getElementById('address').focus();
					return false;
				}
	
	if(isNull(document.getElementById('city').value))
				{
					alert('Please enter city.');
					document.getElementById('city').focus();
					return false;
				}
	
	if(isNull(document.getElementById('state').value))
				{
					alert('Please enter state.');
					document.getElementById('state').focus();
					return false;
				}
	
	if(isNull(document.getElementById('zip').value))
				{
					alert('Please enter zip.');
					document.getElementById('zip').focus();
					return false;
				}

	if(isNull(document.getElementById('phone').value))
				{
					alert('Please enter phone.');
					document.getElementById('phone').focus();
					return false;
				}
	if(!isNumeric(document.getElementById('phone').value))
									{
										alert('Please enter numeric only in phone.');
										document.getElementById('phone').focus();
										return false;
									}
									
	if(isNull(document.getElementById('email').value))
				{
					alert('Please enter your e-mail address.');
					document.getElementById('email').focus();
					return false;
				}
	
	if(!checkEmail(document.getElementById('email').value))
			{
				alert('Please enter your valid email address.');
				document.getElementById('email').focus();
				return false;
			}

	
	return true;
	}