
function socialValid(social) {
	socialreg=/^\d{3}([\s\-])\d{2}\1\d{4}$/;
	return(socialreg.exec(social));
}

function emailValid(email) {
	emailreg=/^.+@.+\..{2,3}$/i
	return(emailreg.exec(email));
}

function streetValid(street) {
	streetreg=/\d+\s+\w+\s+\w+/i;
	return(streetreg.exec(street));
}

function zipValid(zip) {
	zipreg=/^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$/;
	return(zipreg.exec(zip));
}

function ph1Valid(ph1field) {
	ph1reg=/(\d{3})[\s\.\-](\d{3})[\s\.\-](\d{4})/;
	ph1test=ph1reg.exec(ph1field.value);
	ph1field.value="(" + RegExp.$1 + ") " + RegExp.$2 + "-" + RegExp.$3;
	return(ph1test);
}

function stateValid(state) {
	statereg=/^[A-Z]{2}$/;
	return(statereg.exec(state));	
}

function nameValid(namestring) {
	namereg=/^[A-Z]./;
	return(namereg.exec(namestring));
}

function isEmpty(notnullstring) {
	emptyreg=/^\S/;
	return(emptyreg.exec(notnullstring));
}

function monthValid(date) {
	memreg=/^\d{1,2}$/;
	return(memreg.exec(date));
}

function yearValid(year) {
	memreg=/^\d{4}$/;
	return(memreg.exec(year));
}

function isDifferent(astring,bstring){
	if (astring == bstring) return true;
	return false;
}

function weightValid(weight) {
	weightreg=/^\d{2,3}$/;
	return(weightreg.exec(weight));
}

function pwdValid1(pwd) {
	pwdreg=/^\w{3,}$/;
	return(pwdreg.exec(pwd));
}

function pwdValid2(pwd) {
	pwdreg=/^[a-zA-Z0-9]{5,}[0-9]|[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][0-9][a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][0-9][a-zA-Z0-9][a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9][0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]|[a-zA-Z0-9][0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]|[0-9][a-zA-Z0-9]{5,}$/;
	return(pwdreg.exec(pwd));
}

function isSelected(list){
	if (list.options.selectedIndex != 0) return true;
	return false;
}

function isValidRadio(radio){
	var valid=false;
	for (var i = 0; i < radio.length; i++){
		if (radio[i].checked) {
			return true;
		}
	}
	return false;
}

function isChecked(box){
	if(box.checked) return true;
	return false;
}

function setFocus(){
	for(var i=0;i< document.forms[0].elements.length;i++){
		if(document.forms[0].elements[i].type != 'hidden'){
			document.forms[0].elements[i].focus();
			break;
		}
	}
}


function stepsValid(steps) {
	stepsreg=/^\d{1,5}$/;
	return(stepsreg.exec(steps));
}

function stepsToMilesValid(steps) {
	stepsreg=/^\d{1,9}$/;
	return(stepsreg.exec(steps));
}

function ssn4Valid(ssn) {
	ssnreg=/^\d{4}$/;
	return(ssnreg.exec(ssn));
}

function num3Valid(num) {
	numreg=/^\d{3}$/;
	return(numreg.exec(num));
}

function memNumValid(num) {
	numreg=/^\d{1,8}$/;
	return(numreg.exec(num));
}

function VCValid(num) {
	vcreg=/^\d{3,4}$/;
	return(vcreg.exec(num));
}

function isAmericanExpress(cc){
  firstdig = cc.substring(0,1);
  seconddig = cc.substring(1,2);
  if ((cc.length == 15) && (firstdig == 3) &&
      ((seconddig == 4) || (seconddig == 7)))
    return isCreditCard(cc);
  return false;
}

function isMasterCard(cc){
  firstdig = cc.substring(0,1);
  seconddig = cc.substring(1,2);
  if ((cc.length == 16) && (firstdig == 5) &&
      ((seconddig >= 1) && (seconddig <= 5)))
    return isCreditCard(cc);
  return false;
}

function isVisa(cc){
  if (((cc.length == 16) || (cc.length == 13)) &&
      (cc.substring(0,1) == 4))
    return isCreditCard(cc);
  return false;
}

function isDiscover(cc){
  first4digs = cc.substring(0,4);
  if ((cc.length == 16) && (first4digs == "6011"))
    return isCreditCard(cc);
  return false;
}

function isCreditCard(st) {
  // Encoding only works on cards with less than 19 digits
  if (st.length > 19)
    return (false);

  sum = 0; mul = 1; l = st.length;
  for (i = 0; i < l; i++) {
    digit = st.substring(l-i-1,l-i);
    tproduct = parseInt(digit ,10)*mul;
    if (tproduct >= 10)
      sum += (tproduct % 10) + 1;
    else
      sum += tproduct;
    if (mul == 1)
      mul++;
    else
      mul--;
  }
// Uncomment the following line to help create credit card numbers
// 1. Create a dummy number with a 0 as the last digit
// 2. Examine the sum written out
// 3. Replace the last digit with the difference between the sum and
//    the next multiple of 10.

//  document.writeln("<BR>Sum      = ",sum,"<BR>");
//  alert("Sum      = " + sum);

  if ((sum % 10) == 0)
    return (true);
  else
    return (false);

}