///////////////////////////////////////////////////////

// JavaScript form validation functions script.  

///////////////////////////////////////////////////////

function isBlank(Ctrl) {  // returns true if blank   

   if (Ctrl.value.length < 1) return true;

   else if (isEmpty(Ctrl.value)) return true;

   return false; }

function isEmpty(s) { // prevents entering empty strings

   for (var i = 0; i < s.length; i++) {

      var c = s.charAt(i);

      if ((c != ' ') && (c != '\n') && (c != '\t')) return false; 

   }

   return true; }



function testSimpleEmail(Ctrl){  // returns true if invalid email

   var err=0;

   emailString = Ctrl.value;

   if (window.RegExp) {

      var regexEmail = /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$/;

      return !regexEmail.test(emailString);

   } else {

      if (emailString.indexOf("@",1) == -1) err=1;  // need @ symbol

      if (emailString.indexOf("@",1) != emailString.lastIndexOf("@")) err=1;  // only one @ symbol

      if (emailString.indexOf(".",3) == -1) err=1;  // need at least one "."

      if (emailString.lastIndexOf(".") == (emailString.length-1)) err=1;  // can't end with a "."

      // check length

      if (err==0) {

         var at = (emailString.indexOf("@"))+1;

         var lastDot = (emailString.lastIndexOf("."))+1;

         // test to make sure there's at least one character between "at" and "lastDot"

         if (lastDot - at == 1) err=1;

      }

   }

   if (err==1) return true;

   return false;

}   // end testSimpleEmail()



function errorAlert(e) {

    // If ErrorString "e" has content, there was at least one error; let them know.

   if (e.length > 0) {

      msg  = "____________________________________________________\n\n";

      msg += "  The form was not submitted for the following reason(s): \n";

      msg += "____________________________________________________\n";

      alert(msg + e);

      return false;

   } 

   return true;

} // end errorAlert()
