// form validation

// returns true if the string is a US phone number formatted as...
// (000)000-0000, (000) 000-0000, 000-000-0000, 000.000.0000, 000 000 0000, 0000000000
function isPhoneNumber(str){
  var re = new RegExp(/^\(?[2-9]\d{2}[\)\.-]?\s?\d{3}[\s\.-]?\d{4}$/);
  return re.test(str);
}

function antispam(formObj) {
  if (formObj.elements['additional2'] && formObj.elements['additional2'].value == 'enter text here') {
    formObj.elements['additional2'].value = 'onsubmit called';
  }
}

function checkFields(formObj, checkfields) {
  var missinginfo = "";
  var i = 0;
  for (i = 0; i < checkfields.length; i = i + 2) {
    var fieldname = checkfields[i];
    var msg_text = checkfields[i+1];
    if (formObj.elements[fieldname].value == "") {
      missinginfo += "\n  " + msg_text;
    }
  }
  if (missinginfo != "") {
    missinginfo ="_____________________________\n" +
      "The following fields are required:\n" +
      missinginfo + "\n_____________________________" +
      "\nPlease re-enter and submit again!";
  }
  if (fieldname == 'phone' && !isPhoneNumber(formObj.elements[fieldname].value)) {
    missinginfo += "\n\n" + msg_text + " is not a valid US phone number. Please enter your phone number including area code.";
  }

  if (missinginfo != "") {
    alert(missinginfo);
    return false;
  } else {
    antispam(formObj);
    return true;
  }
}


