function Validator(theForm)
{
 
  if (theForm.firstName.value == "")
  {
    alert("Please enter a value for the \"firstName\" field.");
    theForm.firstName.focus();
    return (false);
  }
 
  if (theForm.firstName.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"firstName\" field.");
    theForm.firstName.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-@.- \t\r\n\f";
  var checkStr = theForm.firstName.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit, whitespace and \"-\" characters in the \"firstName\" field.");
    theForm.firstName.focus();
    return (false);
  }
 
  if (theForm.lastName.value == "")
  {
    alert("Please enter a value for the \"Last Name\" field.");
    theForm.lastName.focus();
    return (false);
  }
 
  if (theForm.lastName.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"Last Name\" field.");
    theForm.lastName.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-- \t\r\n\f";
  var checkStr = theForm.lastName.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit, whitespace and \"-\" characters in the \"Last Name\" field.");
    theForm.lastName.focus();
    return (false);
  }
 
  if (theForm.email.value == "")
  {
    alert("Please enter a value for the \"Email Address\" field.");
    theForm.email.focus();
    return (false);
  }
 
  if (theForm.email.value.length < 3)
  {
    alert("Please enter at least 3 characters in the \"Email Address\" field.");
    theForm.email.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-@.--";
  var checkStr = theForm.email.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and \"@.-\" characters in the \"Email Address\" field.");
    theForm.email.focus();
    return (false);
  }
 
  if (theForm.address1.value == "")
  {
    alert("Please enter a value for the \"AddressLine1\" field.");
    theForm.address1.focus();
    return (false);
  }
 
  if (theForm.address1.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"AddressLine1\" field.");
    theForm.address1.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-.- \t\r\n\f";
  var checkStr = theForm.address1.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit, whitespace and \"-.\"characters in the \"AddressLine1\" field.");
    theForm.address1.focus();
    return (false);
  }
 
  if (theForm.city.value == "")
  {
    alert("Please enter a value for the \"City\" field.");
    theForm.city.focus();
    return (false);
  }
 
  if (theForm.city.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"City\" field.");
    theForm.city.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.city.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"City\" field.");
    theForm.city.focus();
    return (false);
  }
 
  if (theForm.state_province.value == "")
  {
    alert("Please enter a value for the \"State/Province\" field.");
    theForm.state_province.focus();
    return (false);
  }
 
  if (theForm.state_province.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"State/Province\" field.");
    theForm.state_province.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-- \t\r\n\f";
  var checkStr = theForm.state_province.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit, whitespace and \"-\" characters in the \"State/Province\" field.");
    theForm.state_province.focus();
    return (false);
  }
 
  if (theForm.zip.value == "")
  {
    alert("Please enter a value for the \"Zip/PostalCode\" field.");
    theForm.zip.focus();
    return (false);
  }
 
  if (theForm.zip.value.length < 5)
  {
    alert("Please enter at least 5 characters in the \"Zip/PostalCode\" field.");
    theForm.zip.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789--";
  var checkStr = theForm.zip.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and \"-\" characters in the \"Zip/PostalCode\" field.");
    theForm.zip.focus();
    return (false);
  }
 
  if (theForm.country.selectedIndex < 0)
  {
    alert("Please select one of the \"Country\" options.");
    theForm.country.focus();
    return (false);
  }
 
  if (theForm.country.selectedIndex == 0)
  {
    alert("The first \"Country\" option is not a valid selection.  Please choose one of the other options.");
    theForm.country.focus();
    return (false);
  }
 
  if (theForm.phone.value == "")
  {
    alert("Please enter a value for the \"Phone\" field.");
    theForm.phone.focus();
    return (false);
  }
 
  if (theForm.phone.value.length < 10)
  {
    alert("Please enter at least 10 characters in the \"Phone\" field.");
    theForm.phone.focus();
    return (false);
  }
 
  if (theForm.phone.value.length > 18)
  {
    alert("Please enter at most 18 characters in the \"Phone\" field.");
    theForm.phone.focus();
    return (false);
  }
 
  var checkOK = "0123456789-()-";
  var checkStr = theForm.phone.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only digit and \"-()\" characters in the \"Phone\" field.");
    theForm.phone.focus();
    return (false);
  }
 
  if (theForm.jobType.selectedIndex < 0)
  {
    alert("Please select one of the \"JobType\" options.");
    theForm.jobType.focus();
    return (false);
  }
 
  if (theForm.jobType.selectedIndex == 0)
  {
    alert("The first \"JobType\" option is not a valid selection.  Please choose one of the other options.");
    theForm.jobType.focus();
    return (false);
  }
 
  if (theForm.licenseType.value == "")
  {
    alert("Please enter a value for the \"LicenseType\" field.");
    theForm.licenseType.focus();
    return (false);
  }
 
  if (theForm.licenseType.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"LicenseType\" field.");
    theForm.licenseType.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.licenseType.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"LicenseType\" field.");
    theForm.licenseType.focus();
    return (false);
  }
 
  if (theForm.issueing_state_province.value == "")
  {
    alert("Please enter a value for the \"IssueingStateOrProvince\" field.");
    theForm.issueing_state_province.focus();
    return (false);
  }
 
  if (theForm.issueing_state_province.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"IssueingStateOrProvince\" field.");
    theForm.issueing_state_province.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \t\r\n\f";
  var checkStr = theForm.issueing_state_province.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter and whitespace characters in the \"IssueingStateOrProvince\" field.");
    theForm.issueing_state_province.focus();
    return (false);
  }
 
  if (theForm.licenseAgency.value == "")
  {
    alert("Please enter a value for the \"licenseAgency\" field.");
    theForm.licenseAgency.focus();
    return (false);
  }
 
  if (theForm.licenseAgency.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"licenseAgency\" field.");
    theForm.licenseAgency.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.licenseAgency.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"licenseAgency\" field.");
    theForm.licenseAgency.focus();
    return (false);
  }
 
  if (theForm.licenseNumber.value == "")
  {
    alert("Please enter a value for the \"licenseNumber\" field.");
    theForm.licenseNumber.focus();
    return (false);
  }
 
  if (theForm.licenseNumber.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"licenseNumber\" field.");
    theForm.licenseNumber.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.licenseNumber.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"licenseNumber\" field.");
    theForm.licenseNumber.focus();
    return (false);
  }
 
  if (theForm.degree.selectedIndex < 0)
  {
    alert("Please select one of the \"Degree\" options.");
    theForm.degree.focus();
    return (false);
  }
 
  if (theForm.degree.selectedIndex == 0)
  {
    alert("The first \"Degree\" option is not a valid selection.  Please choose one of the other options.");
    theForm.degree.focus();
    return (false);
  }
 
  if (theForm.major_field.value == "")
  {
    alert("Please enter a value for the \"major_field\" field.");
    theForm.major_field.focus();
    return (false);
  }
 
  if (theForm.major_field.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"major_field\" field.");
    theForm.major_field.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.major_field.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"major_field\" field.");
    theForm.major_field.focus();
    return (false);
  }
 
  if (theForm.degreeInstitution.value == "")
  {
    alert("Please enter a value for the \"Institution\" field.");
    theForm.degreeInstitution.focus();
    return (false);
  }
 
  if (theForm.degreeInstitution.value.length < 1)
  {
    alert("Please enter at least 1 characters in the \"Institution\" field.");
    theForm.degreeInstitution.focus();
    return (false);
  }
 
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- \t\r\n\f";
  var checkStr = theForm.degreeInstitution.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit and whitespace characters in the \"Institution\" field.");
    theForm.degreeInstitution.focus();
    return (false);
  }
 
  if (theForm.testing_Years.value == "")
  {
    alert("Please enter a value for the \"testing_Years\" field.");
    theForm.testing_Years.focus();
    return (false);
  }
 
  if (theForm.testing_Years.value.length < 1)
  {
    alert("Please enter at least 1 character in the \"testing_Years\" field.");
    theForm.testing_Years.focus();
    return (false);
  }
 
  if (theForm.testing_Years.value.length > 4)
  {
    alert("Please enter at most 4 characters in the \"testing_Years\" field.");
    theForm.testing_Years.focus();
    return (false);
  }
 
  var checkOK = "0123456789-";
  var checkStr = theForm.testing_Years.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only digit characters in the \"testing_Years\" field.");
    theForm.testing_Years.focus();
    return (false);
  }
  return (true);
}
