<!--
  String.prototype.trim = function()
  {
    // Use a regular expression to normalize the string
    var s = this.replace (/\s+/g, "");
    return s.replace(/(^\s+)|(\s+$)/g, "");
  }

  function verifyEntries(nameBox, idBox)
   {
    
    var message = "Please correct these errors:\n\n";
    var ret = true;
    
    // Validate Candidate number
    var temp = idBox.value.trim();
    idBox.value=temp;
    // jsyear is initial matching character(s) 
    var id = temp.substr(0,1);
    var idL = temp.substr(0,2); 
    
    if (id==classyear.substr(3,1) || idL==classyear.substr(2,2) || idL=='10')
      {}
   else
      { message +=" - Valid " + useridfield + " or  " + altuseridfield + " must begin with '" + classyear.substr(3,1) + "' or  '" + classyear.substr(2,2) + "' \n   ('10' for testers).\n\n";
        ret = false;} 

    if (temp.length!=6)
      { message += " - Valid " + useridfield +  " or  " + altuseridfield + " must have exactly 6 digits.\n\n";
        ret = false;}

    if (isNaN(temp))
      {
        message += " - Valid " + useridfield +  " or  " + altuseridfield + " consists of numbers only.\n\n";
        ret = false;
      }

    // Validate Namebox field
    temp = nameBox.value;
    if (temp.length < 1) 
      { message +=" - Please enter your name.\n\n";
        ret = false;}

    if (ret==false)
      { alert(message); }

    return ret;
   }


function showLookup()
{
  document.getElementById('lookup').style.display='';
}
function lookupID()
{
  var namelike=document.getElementById('namelike').value.trim();
  var ssn=document.getElementById('ssn').value.trim();
  if (namelike.length ==0)
  {
    alert('Please enter at least the first three (3) letters of your last name in the query field.\n\nIf your name is shorter, you may override this requirement later.'); 
    return false;
  } 
  if (namelike.length < 3)
  {
    if (!confirm('\'' + namelike + '\' is only ' + namelike.length + ' letter(s) long.\nIs it your complete last name?')) 
    { return false;}
  } 
  if (ssn.length != 4)
  {
    // alert(ssn + ' is too short!\nSocial security numbers have 9 digits.\n\nPlease fill in your complete SSN.'); 
    alert('Please fill in the last 4 digits (no more, no less) of your social security number.'); 
    return false;
  } 
  var targ="/cabs.usna.edu/lookupAJAX.asp";  // Chrome tries to prevent popup / redirection here
  var postdata = "namelike=" + encodeURI(namelike) + "&ssn=" + encodeURI(ssn) + "&useridfield=" + useridfield;
  var start="http:/";
  var httpRequest;
  if (window.XMLHttpRequest) 
  { // Mozilla, Safari, ...
    httpRequest = new XMLHttpRequest();
  } 
  else if (window.ActiveXObject) 
  { // IE
    httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
  }
  else
  {
    window.open(start + targ + "?window=true&" & postdata); 
    return;
  }  
  // alert(postdata + "\n" + start + targ);
  document.getElementById('feedback').innerHTML="Retrieving user information...";
  httpRequest.open("POST", start + targ, true);
  httpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
  httpRequest.send(postdata);
  httpRequest.onreadystatechange = function() { showid(httpRequest); };
  
  return true;
}

function showid(httpRequest)
{
   
  if (httpRequest.readyState == 4) //  && httpRequest.status == 200) 
  {
    var resp=httpRequest.responseText;
    httpRequest=null;
    // alert(resp);
    var resps = resp.split("|")
    // no match returns 0-length resps[0]
    if (resps[0].length)
    { 
      document.getElementsByName('userid')[0].value=resps[0];
      document.getElementsByName('lastname')[0].value=resps[2];
    }
    var feedback=document.getElementById('feedback');
    while (feedback.childNodes[0])
    {
      feedback.removeChild(feedback.childNodes[0]);
    }
    var par = document.createElement('p');
	par.appendChild(document.createTextNode(resps[1]));
	feedback.appendChild(par);
  }
}

-->
