/*
 *  Contents:
 *    convertPhone(field)
 *    verifyADUpdate(form)
 *  Used in:
 *    admin/directory/addrecord.php
 *    admin/directory/editrecord.php
 *    phpincludes/directory/add_form.php
 *    phpincludes/directory/update_form.php
 */

/**
 *  Tests and convets phone number to '(nnn) nnn-nnnn' format;
 *
 *  @param {HTMLInputElement} el
 *  @type   void
 *
 */
function convertPhone(el)
{
  if (el.value != "") {
    var s = formatPhone(el.value);

    if (s == -1) {
      el.value = "";
      alert("Something was wrong with the phone number.\nPlease try again.");
    }
    else {
      el.value = s;
    }
  }
}

/**
 *  Checks essential form fields and alerts user of omissions.
 *
 *  @param  {object HTMLFormElement} form    the form to verify
 *  @return If all required fields then true else false.
 *  @type   boolean
 */
function verifyADUpdate(form)
{
  var errormsg = "A required field is blank.\n" +
    "Please enter ";

  for (var i = 0; i < form.elements.length; i++) {
    if (form.elements[i].value == "") {
      switch (form.elements[i].name) {
        case "orgname":
          alert(errormsg + "the organization name.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "namesort":
          alert(errormsg + "the name sort.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "city":
          alert(errormsg + "the city.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "state":
          alert(errormsg + "the state.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "postalcode":
          alert(errormsg + "the postal code.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "phone":
          alert(errormsg + "the phone number.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "hours":
          alert(errormsg + "the hours.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "contact":
          alert(errormsg + "the contact information.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "purpose":
          alert(errormsg + "the purpose of the organization.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "submittedby":
          alert(errormsg + "who you are.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "replytoemail":
          alert(errormsg + "the reply-to e-mail.");
          form.elements[form.elements[i].name].focus();
          return false;

        case "address1": // address1 or address2 must be completed
          if (form.elements["address2"].value == "") {
            alert(errormsg + "the address");
            form.elements[form.elements[i].name].focus();
            return false;
          }
          break;
      }
    }
  }
  return true;
}
