// JavaScript Document

function validateFormOnSubmit(theForm) {
var reason = "";

  reason += validateName(theForm.name);
  reason += validateEmail(theForm.email);
  reason += validateHearAboutUs(theForm.hear);

  if (reason != "") {
    alert("The form was not submitted due to the following problems:\n\n" + reason);
    return false;
  }
  return true;
}

// empty fields
function validateEmpty(fld) {
    var error = "";
    if (fld.value.length == 0) {
        fld.style.background = 'Yellow'; 
        error = "*The required field has not been filled in.\n"
    } else {
        fld.style.background = 'White';
    }
    return error;  
}

// first name
function validateName(fld) {
    var error = "";
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "*Name is required\n";
    } else {
        fld.style.background = 'White';
    }
    return error;
}


// Email
function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
}

function validateEmail(fld) {
    var error="";
    var tfld = trim(fld.value);                        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (fld.value == "") {
        fld.style.background = 'Yellow';
        error = "*Email is required\n";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.background = 'Yellow';
        error = "*Please enter a valid Email\n";
    } else if (fld.value.match(illegalChars)) {
        fld.style.background = 'Yellow';
        error = "*The Email contains illegal characters.\n";
    } else if (document.request.email.value != document.request.verifyEmail.value) {   // test to see if they are the same
        fld.style.background = 'Yellow';
        error = "*Email addresses do not match\n";
    } else {
        fld.style.background = 'White';
    }
    return error;
}


// Hear About Us
function validateHearAboutUs(fld) {
    var error = "";
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "*How did you hear about us is required\n";
    } else {
        fld.style.background = 'White';
    }
    return error;
}

