//REGISTRATION

function CheckForm() {   
	var ThisForm = document.REGISTRATION; 
	var onlyNumText = /[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|]/;

if (ThisForm.LName.value == ""){
    alert('The \'Last Name\' field is required!');
    ThisForm.LName.focus();
    return false;
   }
if (ThisForm.FName.value == ""){
    alert('The \'First Name\' field is required!');
    ThisForm.FName.focus();
    return false;
   }
if (ThisForm.Address1.value == ""){
    alert('The \'Address\' field is required!');
    ThisForm.Address1.focus();
    return false;
   }
if (ThisForm.City.value == ""){
    alert('The \'City\' field is required!');
    ThisForm.City.focus();
    return false;
   } 
if (ThisForm.Zip.value == ""){
    alert('The \'Zip\' field is required!');
    ThisForm.Zip.focus();
    return false;
   }
if (ThisForm.Country.value == ""){
    alert('The \'Country\' field is required!');
    ThisForm.Country.focus();
    return false;
   }
if (ThisForm.Country.value != "US" && ThisForm.State.value.length == 2){
    alert('US State cannot be selected for non-US countries!');
    ThisForm.State.focus();
	ThisForm.State.selectedIndex = 0;
    return false;
   }  
if (ThisForm.Phone1.value == ""){
    alert('The \'Phone\' field is required!');
    ThisForm.Phone1.focus();
    return false;
   }
//email validation ---------------------------  
if (ThisForm.Email.value == ""){
    alert('The \'Email\' field is required!');
    ThisForm.Email.focus();
    return false;
   }   
if (!ValidateEmail(ThisForm.Email.value))
   {
     alert('You must enter a valid email address.');
     ThisForm.Email.focus();
     ThisForm.Email.select();
     return false;
   }
//end email validation ---------------------------   

if ((ThisForm.UserName.value == "") || (ThisForm.UserName.length < 5)){
    alert('The \'User Name\' field is required! \nIt must be at least 5 characters long');
    ThisForm.UserName.focus();
    return false;
   }
if (onlyNumText.test(ThisForm.UserName.value)) {
	alert("The username contains illegal characters.\nOnly letters and numbers are allowed.");
	ThisForm.UserName.focus();
	return false;
   }
if (ThisForm.Terms.value == ""){
    alert('You must agree to Terms!');
    ThisForm.Terms.focus();
    return false;
   } 

  return true; 
}


function ValidateEmail(address) {
     if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(document.REGISTRATION.Email.value))
    { return true; }
     return false;
    }

function checkEmail(email){
	if (email.value.length>0 && !ValidateEmail(email.value)){
     	alert('You must enter a valid email address.');
     	email.focus();
     	email.select();
    }
}
