function Form_Validator(theForm)
{

  if (theForm.DrName.value == "")
  {
    alert("Please enter a value for the \"Driver Name\" field.");
    theForm.DrName.focus();
    return (false);
  }

  if (theForm.DrSSNo.value == "")
  {
    alert("Please enter a value for the \"Social Security Number\" field.");
    theForm.DrSSNo.focus();
    return (false);
  }

  var checkOK = "0123456789-- \t\r\n\f";
  var checkStr = theForm.DrSSNo.value;
  var allValid = 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, whitespace and \"-\" characters in the \"Social Security Number\" field.");
    theForm.DrSSNo.focus();
    return (false);
  }

  if (theForm.DrAddr.value == "")
  {
    alert("Please enter a value for the \"Driver Address\" field.");
    theForm.DrAddr.focus();
    return (false);
  }

  if (theForm.DrCity.value == "")
  {
    alert("Please enter a value for the \"Driver City\" field.");
    theForm.DrCity.focus();
    return (false);
  }

  if (theForm.DrState.value == "")
  {
    alert("Please enter a value for the \"Driver State\" field.");
    theForm.DrState.focus();
    return (false);
  }

  if (theForm.DrState.value.length < 2)
  {
    alert("Please enter at least 2 characters in the \"Driver State\" field.");
    theForm.DrState.focus();
    return (false);
  }

  if (theForm.DrState.value.length > 2)
  {
    alert("Please enter at most 2 characters in the \"Driver State\" field.");
    theForm.DrState.focus();
    return (false);
  }

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ";
  var checkStr = theForm.DrState.value;
  var allValid = 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 characters in the \"Driver State\" field.");
    theForm.DrState.focus();
    return (false);
  }

  if (theForm.DrZip.value == "")
  {
    alert("Please enter a value for the \"Driver Zip\" field.");
    theForm.DrZip.focus();
    return (false);
  }

  if (theForm.DrZip.value.length < 5)
  {
    alert("Please enter at least 5 characters in the \"Driver Zip\" field.");
    theForm.DrZip.focus();
    return (false);
  }

  if (theForm.DrZip.value.length > 10)
  {
    alert("Please enter at most 10 characters in the \"Driver Zip\" field.");
    theForm.DrZip.focus();
    return (false);
  }

  var checkOK = "0123456789--";
  var checkStr = theForm.DrZip.value;
  var allValid = 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 \"Driver Zip\" field.");
    theForm.DrZip.focus();
    return (false);
  }

  if (theForm.DrPhone.value == "")
  {
    alert("Please enter a value for the \"Driver phone\" field.");
    theForm.DrPhone.focus();
    return (false);
  }

  if (theForm.DrsLic.value == "")
  {
    alert("Please enter a value for the \"Drivers License Number\" field.");
    theForm.DrsLic.focus();
    return (false);
  }

  if (theForm.DrLicExpDate.value == "")
  {
    alert("Please enter a value for the \"Drivers License Expiration Date\" field.");
    theForm.DrLicExpDate.focus();
    return (false);
  }

  if (theForm.DrLicExpDate.value.length < 5)
  {
    alert("Please enter at least 5 characters in the \"Drivers License Expiration Date\" field.");
    theForm.DrLicExpDate.focus();
    return (false);
  }

  if (theForm.DrLicState.value == "")
  {
    alert("Please enter a value for the \"Driver's License State\" field.");
    theForm.DrLicState.focus();
    return (false);
  }

  if (theForm.DrLicState.value.length < 2)
  {
    alert("Please enter at least 2 characters in the \"Driver's License State\" field.");
    theForm.DrLicState.focus();
    return (false);
  }

  var radioSelected = false;
  for (i = 0;  i < theForm.Crime.length;  i++)
  {
    if (theForm.Crime[i].checked)
        radioSelected = true;
  }
  if (!radioSelected)
  {
    alert("Please select one of the \"Have you ever been convicted of a crime?\" options.");
    return (false);
  }

  var radioSelected = false;
  for (i = 0;  i < theForm.LicSusp.length;  i++)
  {
    if (theForm.LicSusp[i].checked)
        radioSelected = true;
  }
  if (!radioSelected)
  {
    alert("Please select one of the \"Was your license ever revoked?\" options.");
    return (false);
  }

  if (theForm.MvVioNo.value == "")
  {
    alert("Please enter a value for the \"Moving Violation No\" field.");
    theForm.MvVioNo.focus();
    return (false);
  }

  var checkOK = "0123456789";
  var checkStr = theForm.MvVioNo.value;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  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;
    }
    allNum += ch;
  }
  if (!allValid)
  {
    alert("Please enter only digit characters in the \"Moving Violation No\" field.");
    theForm.MvVioNo.focus();
    return (false);
  }

  var radioSelected = false;
  for (i = 0;  i < theForm.Acc.length;  i++)
  {
    if (theForm.Acc[i].checked)
        radioSelected = true;
  }
  if (!radioSelected)
  {
    alert("Please select one of the \"Accedents in last 3 Yrs?\" options.");
    return (false);
  }

  var checkOK = "0123456789--";
  var checkStr = theForm.CurEMZip.value;
  var allValid = 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 \"Bu Zip\" field.");
    theForm.CurEMZip.focus();
    return (false);
  }

  var checkOK = "0123456789--";
  var checkStr = theForm.PastEMZip1.value;
  var allValid = 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 \"Bu Zip\" field.");
    theForm.PastEMZip1.focus();
    return (false);
  }

  var checkOK = "0123456789--";
  var checkStr = theForm.PastEMZip2.value;
  var allValid = 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 \"Bu Zip\" field.");
    theForm.PastEMZip2.focus();
    return (false);
  }

//ACCEPT CERTIFICATION TERMS?
  var radioSelected = false;
  if (theForm.AcceptCerts[1].checked != true)
  {
    alert("You must accept the certification terms.");
    return (false);
  }
  return (true);
}
//-->