<!-- WebLead_Form_Validation js -->
<!-- HASSON -->
<!-- Updated: 01/13/2009 JRT -->
<!-- added validation to phone/zipcodes -->

function validateAndSubmit() {
var has_validate
  if (document.getElementById('firstname').value.length == 0) {
    alert ("First Name is required.");
    document.getElementById('firstname').focus();
    return false;
  }
  else if (document.getElementById('lastname').value.length == 0) {
    alert ("Last Name is required.");
    document.getElementById('lastname').focus();
    return false;
  }
  else if (document.getElementById('zip').value.length == 0) {
    alert ("Current Zip Code is required.");
    document.getElementById('zip').focus();
    return false;
  }
    else if ((document.getElementById('contact').checked == false) && (document.getElementById('contact1').checked == false)) {
      alert ("Please indicate how you would like to be contacted.");
      return false;
  }
  else if (document.getElementById('email').value.length == 0) {
    alert ("Email is required.");
    document.getElementById('email').focus();
    return false;
  }
  else if (!EmailTest(document.getElementById('email'))) {
    alert ("Please enter a valid Email Address.");
    document.getElementById('email').focus();
    return false;
  }
    else if ((document.getElementById('contact').checked == true)){
      if ((document.getElementById('contact').value == "Phone Number") && (document.getElementById('phone').value.length == 0)){
        alert ("Phone number is required.");
        document.getElementById('phone').focus();
        return false;
      } 
  }
  has_validate = true;
  
  if(has_validate){
    DisableAndSubmit('form1','submit');
    }
}

function validateAndSubmit1() {
var has_validate
  if (document.getElementById('firstname').value.length == 0) {
    alert ("First Name is required.");
    document.getElementById('firstname').focus();
    return false;
  }
  else if (document.getElementById('lastname').value.length == 0) {
    alert ("Last Name is required.");
    document.getElementById('lastname').focus();
    return false;
  }
  else if (document.getElementById('zip').value.length == 0) {
    alert ("Current Zip Code is required.");
    document.getElementById('zip').focus();
    return false;
  }
  else if (document.getElementById('email').value.length == 0) {
    alert ("Email is required.");
    document.getElementById('email').focus();
    return false;
  }
  else if (!EmailTest(document.getElementById('email'))) {
    alert ("Please enter a valid Email Address.");
    document.getElementById('email').focus();
    return false;
  }
  else if (!FieldTest(/[0-9]{3}-[0-9]{3}-[0-9]{4}/, 'phone')) {
    alert ("Please format Evening Phone Number as 000-000-0000.");
    document.getElementById('phone').focus();
    return false;
  }
  else if (!FieldTest(/[0-9]{3}-[0-9]{3}-[0-9]{4}/, 'phone_day')) {
    alert ("Please format Day Phone Number as 000-000-0000.");
    document.getElementById('phone_day').focus();
    return false;
   }
   
   else if (!FieldTest(/(^\d{5}$)|(^\d{5}-\d{4}$)/, 'zip')) {
    alert ("Please format Zip code as 00000 OR 00000-0000.");
    document.getElementById('zip').focus();
    return false;
  }
  has_validate = true;

  if(has_validate){
    DisableAndSubmit('form1','submit');
    }
}

function validateAndSubmit2(){
  if(validateAndSubmit() == false){
    return false;
  }
  if (document.getElementById('email').value != document.getElementById('email2').value) {
    alert ("Email Addresses do not match.");
    document.getElementById('email2').focus();
    return false;
  }
  return true;
}

function validateAndSubmit3() {
var has_validate
  if (document.getElementById('firstname').value.length == 0) {
    alert ("First Name is required.");
    document.getElementById('firstname').focus();
    return false;
  }
  else if (document.getElementById('lastname').value.length == 0) {
    alert ("Last Name is required.");
    document.getElementById('lastname').focus();
    return false;
  }
  else if (document.getElementById('email').value.length == 0) {
    alert ("Email is required.");
    document.getElementById('email').focus();
    return false;
  }
  else if (!EmailTest(document.getElementById('email'))) {
    alert ("Please enter a valid Email Address.");
    document.getElementById('email').focus();
    return false;
  }
  else if (document.getElementById('zip').value.length == 0) {
    alert ("Current Zip Code is required.");
    document.getElementById('zip').focus();
    return false;
  }
  else if (document.getElementById('move_from').value.length == 0) {
    alert ("Move From is required.");
    document.getElementById('move_from').focus();
    return false;
  }
  else if (document.getElementById('move_to').value.length == 0) {
    alert ("Move To is required.");
    document.getElementById('move_to').focus();
    return false;
  }
  else if (!FieldTest(/[0-9]{3}-[0-9]{3}-[0-9]{4}/, 'phone')) {
    alert ("Please format Evening Phone Number as 000-000-0000.");
    document.getElementById('phone').focus();
    return false;
  }
  else if (!FieldTest(/[0-9]{3}-[0-9]{3}-[0-9]{4}/, 'phone_day')) {
    alert ("Please format Day Phone Number as 000-000-0000.");
    document.getElementById('phone_day').focus();
    return false;
   }
   else if (!FieldTest(/(^\d{5}$)|(^\d{5}-\d{4}$)/, 'zip')) {
    alert ("Please format Zip code as 00000 OR 00000-0000.");
    document.getElementById('zip').focus();
    return false;
  }
  has_validate = true;
  
  if(has_validate){
    DisableAndSubmit('form1','submit');
    }
}

function validateShowing(registered){
  if (document.getElementById('showingdate').value.length == 0) {
    alert ("Requested Date is required.");
    document.getElementById('showingdate').focus();
    return false;
  }
  if (document.getElementById('showingtime').value.length == 0) {
    alert ("Requested Time is required.");
    document.getElementById('showingtime').focus();
    return false;
  }
  if(registered == 'FALSE'){
    return validateAndSubmit();
  } 
}


function EmailTest(field){
  var validemail = false;
  if (field.value.length >0) {
    i=field.value.indexOf("@")
    ii = i+1
    iii=field.value.indexOf("@",ii)
    j=field.value.indexOf(".",i)
    k=field.value.indexOf(",")
    kk=field.value.indexOf(" ")
    jj=field.value.lastIndexOf(".")+1
    len=field.value.length
    if ((i>0) && (j>(1+1)) && (iii==-1) && (k==-1) && (kk==-1) && (len-jj >=2) && (len-jj<=4)) {
      //The current email address is correctly formatted
      validemail = true;
    }
  }
  return validemail;
}

function FieldTest(exppattern, fieldid){
  var validfield = false;
  var pattern = exppattern;
  var el = document.getElementById(fieldid);

  if((pattern.test(el.value)) ||(el.value.length < 1)) {
    return true;
    validfield = true;
  }
  return validfield;
}
