﻿
var red = 'red requird';
var required = 'requird';
var firstName;
var lblFirstName;
var lastName;
var lblLastName;
var email;
var lblEmail;
var phone;
var lblphone;
var street;
var lblstreet;
var city;
var lblcity;
var state;
var lblstate;
var zip;
var lblzip;
var country;
var lblcountry;

var firstNameCheck
var lastNameCheck
var emailCheck
var phoneCheck
var addressCheck
var cityCheck
var stateCheck
var zipCheck
var countryCheck



function ValidateProcess() {


   var returnval = false;
   var errorMsg = document.getElementById('errormessage');
  

   Process()
   ProcessChecks()

   if (firstNameCheck && lastNameCheck && emailCheck && phoneCheck 
       && addressCheck && cityCheck && stateCheck && zipCheck && countryCheck) {
      returnval = true
   }
   else {
      errorMsg.className = 'visible';
      ShowMessages();
   }

   return returnval;
}



function Process() {

   // Get all the elements
   
   firstName = document.getElementById('first_name');
   lblFirstName = document.getElementById('lbl_first_name');
   firstName.value = firstName.value.trim();

   lastName = document.getElementById('last_name');
   lblLastName = document.getElementById('lbl_last_name');
   lastName.value = lastName.value.trim();

   email = document.getElementById('email');
   lblEmail = document.getElementById('lbl_email');
   email.value = email.value.trim();

   phone = document.getElementById('phone');
   lblphone = document.getElementById('lbl_phone');

   street = document.getElementById('street');
   lblstreet = document.getElementById('lbl_street');
   street.value = street.value.trim();

   city = document.getElementById('city');
   lblcity = document.getElementById('lbl_city');
   city.value = city.value.trim();

   state = document.getElementById('state');
   lblstate = document.getElementById('lbl_state');
   state.value = state.value.trim();

   zip = document.getElementById('zip');
   lblzip = document.getElementById('lbl_zip');
   zip.value = zip.value.trim();

   country = document.getElementById('country');
   lblcountry = document.getElementById('lbl_country');
   country.value = country.value.trim();
}


function ProcessChecks() {

   firstNameCheck = ValidateFieldsId(firstName);
   lastNameCheck = ValidateFieldsId(lastName);
   emailCheck = ValidateEmail(email);
   phoneCheck = ValidatePhone(phone);
   addressCheck = ValidateFieldsId(street);
   cityCheck = ValidateFieldsId(city);
   stateCheck = ValidateFieldsId(state);
   zipCheck = ValidateFieldsId(zip);
   countryCheck = ValidateFieldsId(country);


}


function ValidatePhone(phonenum) {

   var homeCheck = ValidateFieldsId(phonenum);
   var homeNumber = phonenum.value;
   var phoneExpression = /^(\d{3}-\d{3}-\d{4})/;

   // All 3 fields are blank
   if (!homeCheck) {
      return false;
   }
   else {
      if (!homeNumber.match(phoneExpression)) {
         return false;
      }
      else {
         return true;
      }
   }  
}
999999
function ShowMessages() {

   if (!firstNameCheck) {
      lblFirstName.className = red;
   }
   else {
      lblFirstName.className = required
   }

   if (!lastNameCheck) {
      lblLastName.className = red;
   }
   else {
      lblLastName.className = required
   }

   if (!emailCheck) {
      lblEmail.className = red;
   }
   else {
      lblEmail.className = required;
   }


   if (!phoneCheck) {
      lblphone.className = red;
   }
   else {
      lblphone.className = required;
   }


   if (!addressCheck) {
      lblstreet.className = red;
   }
   else {
      lblstreet.className = required;
   }

   if (!cityCheck) {
      lblcity.className = red;
   }
   else {
      lblcity.className = required;
   }

   if (!stateCheck) {
      lblstate.className = red;
   }
   else {
      lblstate.className = required;
   }

   if (!zipCheck) {
      lblzip.className = red;
   }
   else {
      lblzip.className = required;
   }

   if (!countryCheck) {
      lblcountry.className = red;
   }
   else {
      lblcountry.className = required;
   }
   
}

function ValidateFieldsId(field) {
   with (field) {

      if (value == null || value == "") {
         return false;
      }
      else {
         return true;
      }
   }
}

function ValidateEmail(field) {
   with (field) {
      apos = value.indexOf("@");
      dotpos = value.lastIndexOf(".");
      if (apos < 1 || dotpos - apos < 2) {
         return false;
      }
      else {
         return true;
      }
   }
}


