function validateFormOnSubmit() {
var err = "";

  err += validateEmpty(document.Davol.FirstName);
  err += validateEmpty(document.Davol.LastName);
  err += validateEmpty(document.Davol.EmailAddress);
  err += validateEmpty(document.Davol.CellPhone);
  err += validateEmpty(document.Davol.Address);
  err += validateEmpty(document.Davol.NameDL);
  err += validateEmpty(document.Davol.City);
  err += validateEmpty(document.Davol.State);
  err += validateEmpty(document.Davol.Zip);
  err += validateEmpty(document.Davol.DOB);
  err += validateRadio(document.Davol.Gender);
  err += validateEmpty(document.Davol.EmergencyContactName);
  err += validateEmpty(document.Davol.EmergencyContactPhone);
  err += validateEmpty(document.Davol.Activity);	
	err += validateRadio(document.Davol.DepartingDate);
	err += validateRadio(document.Davol.ReturnDate);
	err += validateRadio(document.Davol.Driving);

  if (err != "") {
	document.getElementById("span_error").innerHTML="Some fields need correction!";
  } else {
		document.getElementById("span_error").innerHTML="Form Complete";
	 	document.Davol.submit();
  }
}
function validateCheck(fld) {
var error = "";

  if (! fld.checked) {
    error = "error";
	fld.style.background = 'Yellow';
	fld.style.border = '1px solid black';
  } else {
	fld.style.background = 'White';
	fld.style.border = '';
  }
  return error;
}
function validateRadio(fld) {
var i = "";
var error = "error";

  for (i=0; i < fld.length; i++) {
    if (fld[i].checked) {
      error = "";
    }
  }
  if (error == "error") {
    for (i=0; i < fld.length; i++) {
	  fld[i].style.background = 'Yellow';
	  fld[i].style.border = '1px solid black';
	}
  } else {
    for (i=0; i < fld.length; i++) {
	  fld[i].style.background = 'White';
	  fld[i].style.border = '';
	}
  }
  return error;
}
function validateEmpty(fld) {
var error = "";
  
    if (fld.value.length == 0) {
        fld.style.background = 'Yellow'; 
        error = "error";
    } else {
        fld.style.background = 'White';
    }
    return error;   
}
function validateUsername(fld) {
var error = "";
var illegalChars = /\W/; // allow letters, numbers, and underscores
 
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "error";
    } else if ((fld.value.length < 5) || (fld.value.length > 15)) {
        fld.style.background = 'Yellow'; 
        error = "error";
    } else if (illegalChars.test(fld.value)) {
        fld.style.background = 'Yellow'; 
        error = "error";
    } else {
        fld.style.background = 'White';
    } 
    return error;
}
function validatePassword(fld) {
var error = "";
var illegalChars = /[\W_]/; // allow only letters and numbers 
 
    if (fld.value == "") {
        fld.style.background = 'Yellow';
        error = "error";
    } else if ((fld.value.length < 7) || (fld.value.length > 15)) {
        error = "error";
        fld.style.background = 'Yellow';
    } else if (illegalChars.test(fld.value)) {
        error = "error";
        fld.style.background = 'Yellow';
    } else if (!((fld.value.search(/(a-z)+/)) && (fld.value.search(/(0-9)+/)))) {
        error = "error";
        fld.style.background = 'Yellow';
    } else {
        fld.style.background = 'White';
    }
   return error;
}
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 = "error";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.background = 'Yellow';
        error = "error";
    } else if (fld.value.match(illegalChars)) {
        fld.style.background = 'Yellow';
        error = "error";
    } else {
        fld.style.background = 'White';
    }
    return error;
}
function validatePhone(fld) {
var error = "";
var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, '');     

   if (fld.value == "") {
        error = "error";
        fld.style.background = 'Yellow';
    } else if (isNaN(parseInt(stripped))) {
        error = "error";
        fld.style.background = 'Yellow';
    } else if (!(stripped.length == 10)) {
        error = "error";
        fld.style.background = 'Yellow';
    } 
    return error;
}
