<!--
// Script By Rob Andersen 1999-2003

function CheckVariable(field,vartype,message)
{ 
  // Requires data in the field.
  if (vartype == "str")
  { 
    //    if (field.value == "" || field.value.indexOf("<")>=0 || field.value.indexOf(">")>=0) //Caused problems
    if (field.value == "")
    { alert(message); field.focus(); return false;
    }
    return true; 
  }

  // Does not allow Zero.  Requires data in the field.
  if (vartype == "int")
  { numberstr = field.value + "";
    if ((numberstr == "") || (numberstr == "0"))
    { alert(message); field.focus(); return false;
    }
    for (i=0; i<numberstr.length; i++)
    { if (numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9")
      { alert(message); field.focus(); return false; 
      }
    }
    return true; 
  }
  // Requires numbers.  Does not allow Zero.  Does not require data entered in the field.
  if (vartype == "intAllowBlank")
  { if (field.value != "" )
    {
      numberstr = field.value + "";
      if (numberstr == "" || numberstr == "0")
      { alert(message); field.focus(); return false;
      }
      for (i=0; i<numberstr.length; i++)
      { if (numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9")
        { alert(message); field.focus(); return false;
        }
      }
      return true;
    }
    return true;
  }
  // Allows Zero.  Requires data in the field.
  if (vartype == "intAllowZero")
  {
    numberstr = field.value + "";
    if (numberstr == "")
    { alert(message); field.focus(); return false;
    }
    for (i=0; i<numberstr.length; i++)
    { if (numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9")
      { alert(message); field.focus(); return false;
      }
    }
    return true;
  }

  // Does not allow Zero.  Requires data in the field. Allows currency symbols.
  if (vartype == "intCurrency")
  { numberstr = field.value + "";
    if ((numberstr == "") || (numberstr == "0"))
    { alert(message); field.focus(); return false;
    }
    for (i=0; i<numberstr.length; i++)
    { if ((numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9") && (numberstr.charAt(i) != ".") && (numberstr.charAt(i) != ",") && (numberstr.charAt(i) != "$"))
      { alert(message); field.focus(); return false; 
      }
    }
    return true; 
  }
  // Allows Zero.  Requires data in the field.  Allows currency symbols.
  if (vartype == "intCurrencyAllowZero")
  {
    if (field.value != "" )
    {
      numberstr = field.value + "";
      if (numberstr == "")
      {
        alert(message); field.focus(); return false;
      }
      for (i=0; i<numberstr.length; i++)
      {
        if ((numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9") && (numberstr.charAt(i) != ".") && (numberstr.charAt(i) != ",") && (numberstr.charAt(i) != "$"))
        {
          alert(message); field.focus(); return false; 
        }
      }
    return true; 
    }
    alert(message); field.focus(); return false; 
  }
  // Allows Zero.  Allow no data in the field.  Allows currency symbols.
  if (vartype == "intCurrencyAllowZeroBlank")
  { if (field.value != "" )
    {numberstr = field.value + "";
      for (i=0; i<numberstr.length; i++)
      { if ((numberstr.charAt(i) < "0" || numberstr.charAt(i) > "9") && (numberstr.charAt(i) != ".") && (numberstr.charAt(i) != ",") && (numberstr.charAt(i) != "$"))
        { alert(message); field.focus(); return false; 
        }
      }
    }
    return true; 
  }

  // Does not allow blank.  Checks for valid e-mail.
  if (vartype == "email")
  { if (field.value.indexOf("@") + "" != "-1" &&  field.value.indexOf(".") + "" != "-1" && field.value != "" && field.value.indexOf("@") + "" != "0" && field.value.indexOf(".") + "" != "0" )
    { return true;   
    } 
    alert(message); field.focus(); return false;
  }

  // Does not allow unselected.
  if (vartype == "select")
  { if (field.selectedIndex == 0) 
    { alert(message); field.focus(); return false;
    } 
    return true;   
  }

  // Does not allow unselected.  Checks multiple select form object.
  if (vartype == "selectMultiple")
  { if (field.selectedIndex == -1) 
    { alert(message); field.focus(); return false;
    } 
    return true;   
  }
  if (vartype == "check")
  { for (i=0; i<field.length; i++)
    { if (field[i].checked)
      { return true;
      }
    }
    alert(message); return false;
  }

  // Does not allow blank.  Checks date format.
  if (vartype == "dateMMDDYYYY") 
  { date=field.value;
    if(date.length!=10 || 
      (date.substring(2,3)!="/"&&date.substring(2,3)!="-") || 
      (date.substring(5,6)!="/"&&date.substring(5,6)!="-") ||
      isNaN(date.substring(0,2)) || 
      isNaN(date.substring(3,5)) || 
      isNaN(date.substring(6,10)) 
    ){ alert(message); field.focus(); return false; }
    return true;
  }

  // Allows blank.  Checks date format.
  if (vartype == "dateMMDDYYYYAllowBlank") 
  { date=field.value;
    if(date!="")
    {
      if(date.length!=10 || 
        (date.substring(2,3)!="/"&&date.substring(2,3)!="-") || 
        (date.substring(5,6)!="/"&&date.substring(5,6)!="-") ||
        isNaN(date.substring(0,2)) || 
        isNaN(date.substring(3,5)) || 
        isNaN(date.substring(6,10)) 
      ){ alert(message); field.focus(); return false; }
      return true;
    }
    return true;
  }

  // Allows blank.  Checks social security number format.
  if (vartype == "ssn")
  { ssn=field.value;
    if(ssn!="")
    {
      if(ssn.length!=11 || 
        (ssn.substring(3,4)!="-") || 
        (ssn.substring(6,7)!="-") ||
        isNaN(ssn.substring(0,3)) || 
        isNaN(ssn.substring(4,6)) || 
        isNaN(ssn.substring(7,11)) 
      ){ alert(message); field.focus(); return false; }
      return true;
    }
    return true;
  }

  // Allows blank.  Checks zip code format.
  if (vartype == "zip")
  {
    var zip1=field.value;
    if( zip1.length==0 || (zip1.length==5&&!isNaN(zip1.substring(0,5))) || (zip1.length==10&&zip1.charAt(5)=="-"&&!isNaN(zip1.substring(0,5))&&!isNaN(zip1.substring(6,10))) )
    { return true; } else { alert(message); field.focus(); return false; }
  }

  // Allows blank.  Checks for 2 characters.
  if (vartype == "state")
  {
    state1=field.value;
    if(state1!="")
    {
      if( state1.length!=2 || !isNaN(state1.substring(0,1)) || !isNaN(state1.substring(1,2)) ){ alert(message); field.focus(); return false; }
    }
    return true;
  }

  // Allows blank.  Checks phone number format.
  if (vartype == "phone")  
  {
    var pnum=field.value;
    if(pnum!="")
    {
      if( pnum.length!=12 || pnum.charAt(3)!="-" || pnum.charAt(7)!="-" || isNaN(pnum.substring(0,3)) || isNaN(pnum.substring(4,7)) || isNaN(pnum.substring(8,12)) )
      { alert(message); field.focus(); return false; }
    }
    return true;
  }
}
// -->

