function fldError(fieldName) {
		makeAlert( 'Form Entry Error', fieldName); 
}

function ContainsSomething(Field) {
   if ((Field.type == "text") || (Field.type == "textarea"))
      {
      if (Field.value == "")
         {
         return false;
         }
      }
   else
      {   
      if (returnSelection(Field) == null)
         {
         return false;
         }
      }

   return true;
}

function isDate(finput, fieldName) {
// has anything been entered?
	if (!ContainsSomething(finput))
       {
       fldError ( fieldName+" is required.");
       return false;
       }
// regular expression to match required date format
    re = /^[0-3]?[0-9]\/[01]?[0-9]\/[12][90][0-9][0-9]$/;

    if(!finput.value.match(re)) {
      fldError( fieldName+"<br />Invalid format or values");
      finput.focus();
      return false;
    }
}

function isValidEmail(finput, fieldName) {
// has anything been entered?
	if (!ContainsSomething(finput))
       {
       fldError ( fieldName+" is required.");
       return false;
       }
    
	if (finput.value.length < 6) {
       fldError ( fieldName+" invalid length.");
       return false;
	}   

// regular expression to match required email format
    re = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Z]{2,4}$/;

    if(!finput.value.match(re)) {
      fldError( 
	             fieldName+"<br />Invalid format or values (must be addr@name.srv)");
      finput.focus();
      return false;
    }
}   

function isValidName(finput, fieldName) {
// has anything been entered?
	if (!ContainsSomething(finput))
       {
       fldError ( fieldName+" is required.");
       return false;
       }
    
	if (finput.value.length < 3) {
       fldError ( fieldName+" invalid length.");
       return false;
	}   

// regular expression to match required name (at least first and last)entry
    re = /(\b[a-z0-9]{3,}\b.*){2,}/i;

    if(!finput.value.match(re)) {
      fldError( fieldName+"<br />Invalid values in name");
      finput.focus();
      return false;
    }
}   

function isValidPhone(finput, fieldName) {
// has anything been entered?
	if (!ContainsSomething(finput))
       {
       fldError ( fieldName+" is required.");
       return false;
       }
    
	if (finput.value.length < 10) {
       fldError ( fieldName+" invalid length.");
       return false;
	}   

// regular expression to match required phone number format
//    re = /^\\(?(\\d{3})\\)?[- ]?(\\d{3})[- ]?(\\d{4})$/;
    re = /^\(?[1-9]\d{2}\)|-\s?\d{3}\-\d{4}$/

    if(!finput.value.match(re)) {
      fldError( fieldName+"<br />Invalid format or values, use: (nnn)nnn-nnnn");
      finput.focus();
      return false;
    }
}   


function isNumb(finput, fieldName, ZeroFlag) {

// has anything been entered?
	if (!ContainsSomething(finput))
       {
       fldError ( fieldName+" is required.");
       return false;
       }
// Check Zero Flag (if numb >= 0)
    if (ZeroFlag == 'TRUE') 
	// flag true check if numb, and if it is >= 0
	   if (finput.value.search(/^[0..9]+$/) != -1)return true;
	   else {
	   	  fldError(fieldName); 
       finput.focus();

	      return false;
	   }
    else 
	   // flag false check if numb, and if it is >= 1
	   if (finput.value.search(/^[1..9]+$/) != -1)return true;
	   else {
	   	  fldError(fieldName); 
       finput.focus();
	      return false;
          }
       
    }       

