
//  Generic Form Validation Routines

function normaliseFld(fld) {
    fld.style.background = fldNormalBkgColour;
    fld.style.color = fldNormalColour;
}

function validateName(fldName,fld) {
    var error = "";
    // regular expression to match required time format
    re = /^[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' -]{0,24}$/;
	  if( !fld.value.match(re)) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " has invalid characters.\n";}
    return error;
}

function validateNotBlank(fldName,fld) {
    var error = "";
	  if( fld.value == "") {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " must be completed.\n";}
    return error;
}

function validateNotDefault(fldName,fld,defaultValue) {
    var error = "";
	  if( fld.value == defaultValue) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " needs to be completed.\n";}
    return error;
}

function validateEmailFormat(fldName,fld) {
    var error="";
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    if(reg.test(fld.value) == false) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " is not a valid email.    '" + fld.value + "'\n";
    }
    return error;
}	 

function validatePhoneNumb(fldName,fld) {
   var error = "";
   var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, '');     
   re = /^\d{0,10}$/;

   if (!(stripped.length == 10)) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " is the wrong length. Make sure you included an area code.  '" + fld.value + "'\n";
   }    
   if (error == "" && !stripped.match(re)) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " contains invalid characters.  '" + fld.value + "'\n";
   }
	 return error;
}

function validateStreetNumb(fldName,fld) {
    var error = "";
		re = /^\d{0,8}[abcdefghijklmnopqrstuvwxABCDEFGHIJKLMNOPQRSTUVWXYZ]{0,1}$/;
	  if( !fld.value.match(re)) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " has an invalid format.  '" + fld.value + "'\n";
		}
    return error;
}

function validateGreaterThanZero(fldName,fld) {
    var error = "";
	  if( !fld.value > 0) {
       fld.style.background = fldErrorBkgColour; 
       error = fldName + " must be greater than zero\n";
		}
    return error;
}



