<!--var v_field = null;var v_options = new Array();var v_noTransform = new Array();v_noTransform["FILLED"] = 1;v_noTransform["MIN_LEN"] = 1;v_noTransform["MAX_LEN"] = 1;v_noTransform["RANGE_LEN"] = 1;v_noTransform["MIN_NBR"] = 1;v_noTransform["MAX_NBR"] = 1;v_noTransform["RANGE_NBR"] = 1;function checkField(field, opts) {  v_options["f"] = opts.search(/f/i) != -1;  // focus on errored fields  v_options["a"] = opts.search(/a/i) != -1;  // alert on errored fields  v_options["t"] = opts.search(/t/i) != -1;  // transform valid fields  v_field = field;  for(var i = 2; i < arguments.length; i++) {    parts = arguments[i].split(" ");    for(var k in parts) parts[k] = new String(parts[k]).replace(/(['"\\\0])/, "\\$1");    func = parts[0];    if(msg = eval(func + "('" + new String(v_field.value).replace(/(['"\\\0])/, "\\$1") + "'" + (parts.length > 1 ? ", '" + parts.slice(1).join("', '") + "'" : "") + ")")) {      if(v_options["a"]) {        alert(msg);      }      if(v_options["f"]) {        v_field.select(); v_field.focus();      }      return false;    }    else if(v_options["t"] && !v_noTransform[func]) {      v_field.value = eval("TO_" + func + "('" + v_field.value + "'" + (parts.length > 1 ? ", '" + parts.slice(1).join("', '") + "'" : "") + ")");    }  }  return true;}function regCheckField(field, opts, pattern, fieldname) {  v_options["f"] = opts.search(/f/i) != -1;  // focus on errored fields  v_options["a"] = opts.search(/a/i) != -1;  // alert on errored fields  v_options["t"] = opts.search(/t/i) != -1;  // transform valid fields  v_field = field;  if(("" + v_field.value).search(pattern) == -1) {    if(v_options["a"]) {      alert("Entry for " + fieldname + " does not seem to be formatted correctly");    }    if(v_options["f"]) {      v_field.select(); v_field.focus();    }    return false;  }  return true;}function FILLED(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.length != 0 ?         "" :         "Please enter a value for " + (fieldname ? fieldname : "entry");}function ALPHA(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^[a-zA-Z]*$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " may only contain alpahabetic characters";}function ALPHANUM(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^[a-zA-Z0-9]*$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " may only contain alpahabetic and numeric characters";}function NUM(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^[0-9]*$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " may only contain numeric characters";}function INT(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^[\-\+]?[0-9]*$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " must be an integer (may not contain any decimal places)";}function DEC(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^[\+\-]?[0-9]*\.?[0-9]*$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " must be a number";}function PHONE(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return (str.replace(/[^0-9]/g, "")).length == 10 ?         "" :         (fieldname ? fieldname : "Entry") + " must contain 10 numeric characters (area code + 7 digit phone number)";}function EMAIL(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.search(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/) == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " must be a properly formatted email address";}function SSN(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return (str.replace(/[^0-9]/g, "")).length == 9 ?         "" :         (fieldname ? fieldname : "Entry") + " must contain 9 numeric characters";}function STATE(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.replace(/^[A-Za-z]{2}$/g, "") == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " must contain 2 alphabetic characters";}function ZIP(str) {  var fieldname = separator = "";  for(var i = 1; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.replace(/^[0-9]{5}(\D[0-9]{4})?$/g, "") == 0 ?         "" :         (fieldname ? fieldname : "Entry") + " must contain 5 numeric characters, or match the new 5 + 4 zipcode format";}function MIN_LEN(str, len) {  var fieldname = separator = "";  for(var i = 2; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.length >= 1 * len ?         "" :         (fieldname ? fieldname : "Entry") + " may not contain less than " + len + " characters";}function MAX_LEN(str, len) {  var fieldname = separator = "";  for(var i = 2; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.length <= 1 * len ?         "" :         (fieldname ? fieldname : "Entry") + " may not contain more than " + len + " characters";}function RANGE_LEN(str, min, max) {  var fieldname = separator = "";  for(var i = 3; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return str.length >= 1 * min && str.length <= 1 * max ?         "" :         (fieldname ? fieldname : "Entry") + " must contain between " + min + " and " + max + " characters";}function MIN_NBR(str, min) {  var fieldname = separator = "";  for(var i = 2; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return 1 * str >= 1 * min ?         "" :         (fieldname ? fieldname : "Entry") + " may not be less than " + min;}function MAX_NBR(str, max) {  var fieldname = separator = "";  for(var i = 2; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return 1 * str >= 1 * max ?         "" :         (fieldname ? fieldname : "Entry") + " may not be greater than " + max;}function RANGE_NBR(str, min, max) {  var fieldname = separator = "";  for(var i = 3; i < arguments.length; i++, separator = " ") fieldname += separator + arguments[i];  return 1 * str >= 1 * min && 1 * str <= 1 * max ?         "" :         (fieldname ? fieldname : "Entry") + " must be between " + min + " and " + max;}function TO_ALPHA(str) {  return str;}function TO_ALPHANUM(str) {  return str;}function TO_NUM(str) {  return str;}function TO_INT(str) {  return 1 * str;}function TO_DEC(str, places) {  newStr = str;  if(places || places == 0)    newStr = decRound(newStr, places);  return 1 * newStr;}function TO_PHONE(str) {  stripped = str.replace(/[^0-9]/g, "");  return "(" + stripped.substr(0, 3) + ") " + stripped.substr(3, 3) + "-" + stripped.substr(6, 4);}function TO_EMAIL(str) {  return str;}function TO_SSN(str) {  stripped = str.replace(/[^0-9]/g, "");  return stripped.substr(0, 3) + "-" + stripped.substr(3, 2) + "-" + stripped.substr(5, 4);}function TO_STATE(str) {  return str.toUpperCase();}function TO_ZIP(str) {  return str;}function decRound(n, p) {  n = "" + n;  decPlaces = n.length - n.indexOf(".") - 1;  if (decPlaces > p) {    x = Math.pow(10, p);    n = Math.round(n * x) / x;  }  return n;}//-->
