  // these are constants to use later
  $msg_header = "Errors were encountered processing this form.\n*********************************************\n*********************************************";
  $requiredFields_label = "Missing the following required fields: \n";
  $conditionalFields_label = "Missing the following conditionally required fields: \n";
  $invalidFields_label = "The following fields have invalid data: \n";

  var reValidDateFormat = /^\d{2}(\/)\d{2}\1\d{4}$/;    // date in MM/DD/YYYY format
  var reValidTimeFormat = /^\d{2}:\d{2}$/;    // date in HH:MM format
  var reValidPhone = /^\d{7}/;    // phone number must be seven numeric
  var reValidAreaCode = /^\d{3}/;    // phone number must be three numeric

  var reValidEmailFormat = /^[a-zA-Z0-9._'-]+@[a-zA-Z0-9._-]+\.[a-zA-Z]{2,}$/;
  var reValidPasswordFormat = /[a-zA-Z0-9._'-]*$/;
//  var reValidPasswordFormat = /^[a-zA-Z0-9]*(?=[a-zA-Z0-9]{8,20})(?=[a-zA-Z0-9]*\d)(?=[a-zA-Z0-9]*[a-z])(?=[a-zA-Z0-9]*[A-Z])[a-zA-Z0-9]*$/;
  var reValidDefaultWhitelistFormat = /^[a-zA-Z0-9._'-]*$/;
  var reValidDefaultSpacesFormat = /^[a-zA-Z0-9\s._'-]*$/;

  function isUndefined(a) 
  {
    if (a == null)
    {
      return true;
    }
    else
    {
      return typeof a == 'undefined';
    }
  } 

  function formatErrorMessage($msg, $requiredFields, $conditionalFields, $invalidFields)
  {
    if ($requiredFields != "")
    {
      $msg += "\n\n" + $requiredFields_label + "\n\n" + $requiredFields;
    }

    if ($conditionalFields != "")
    {
      $msg += "\n\n" + $conditionalFields_label + "\n\n" + $conditionalFields;
    }
	
    if ($invalidFields != "")
    {
      $msg += "\n\n" + $invalidFields_label + "\n\n" + $invalidFields;
    }

    if ($msg != "")
    {
      $msg = $msg_header + $msg;

    }

    return $msg;

  }

  function view_hide_div(divname)
  {
    field = eval(document.getElementById(divname));

    if (!isUndefined(field))
    {
      if ((field.style.display == "none") || (field.style.display == ""))
      {
        field.style.display = "block";
      }
      else
      {
        field.style.display = "none";
      }
    }
  }

