    var emptyString = /^\s*$/ ;
    //var email = /^[^@]+@[^@.]+\.[^@]*\w\w$/  ;
    var email = /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$/;
    //var phone = /^\d{3}\-\d{3}\-\d{4}$/  ;
    //var phone = /^(?:\([2-9]\d{2}\)\ ?|[2-9]\d{2}(?:\-?|\ ?))[2-9]\d{2}[- ]?\d{4}$/;
    var phone = /^(\+\d)*\s*(\(\d{3}\)\s*)*\d{3}(-{0,1}|\s{0,1})\d{2}(-{0,1}|\s{0,1})\d{2}$/;
    var loyaltyCard = /^4[401]\d{9}$/;
    var boosterNumber = /^\d{4}$/;
    var varString = /^[A-Za-z]+$/;
  //  var zipCode = /(^\\d{5}$)|(^\\d{5}-\\d{4}$)/;
    var zipCode = /^\d{5}([\-]\d{4})?$/;
    var houseHold = /^[0-9]+$/;
    
    function setfocus(valfield)
    {
        // save valfield in global variable so value retained when routine exits
        global_valfield = valfield;
        setTimeout( 'setFocusDelayed()', 100 );
    }    

    function setFocusDelayed()
    {
        global_valfield.focus();
    }

    
    // Removes leading whitespaces
	function LTrim( value ) {
		
		var re = /\s*((\S+\s*)*)/;
		return value.replace(re, "$1");
		
	}
	
	// Removes ending whitespaces
	function RTrim( value ) {
		
		var re = /((\s*\S+)*)\s*/;
		return value.replace(re, "$1");
		
	}
	
	// Removes leading and ending whitespaces
	function trim( value ) {
		
		return LTrim(RTrim(value));
		
	}
    function swapImage(myImage, state) {
        if (state == "good") {
            myImage.src = "/StoreLocator/images/validated.gif";
        }
        
        else {
	        myImage.src = "/StoreLocator/images/error.gif";
        }
        
    }
  
    
    function validateRequired(valfield, infofield) {
        if (emptyString.test(valfield.value)) {
                //document.getElementById(infofield).style.display="block";
                swapImage(document.getElementById(infofield), "error");
                setfocus(valfield);
                return false;
        }
        else {
                //document.getElementById(infofield).style.display="none";
                swapImage(document.getElementById(infofield), "good");
                return true;
        }
        
        return true;
            
    }
    
    function validateEmail(valfield, infofield) {
        if (!emptyString.test(valfield.value)) {
	        if (email.test(valfield.value)) {
	            swapImage(document.getElementById(infofield), "good");
	            return true;
	        }
	        else {
	            swapImage(document.getElementById(infofield), "error");
	            setfocus(valfield);
	            return false;
	        }
	        
	        return false;
	    }
	    else return true;
    }

    function validatePhone(valfield, infofield) {
    
        if (!emptyString.test(valfield.value)) {
	        if (phone.test(valfield.value)) {
	            swapImage(document.getElementById(infofield), "good");
	            return true;
	        }
	        else {
	            swapImage(document.getElementById(infofield), "error");
	            setfocus(valfield);
	            return false;
	        }
	        
	        return false;
	    }
	    else return true;
    }
    function validateLC(valfield, infofield) {
        if (!emptyString.test(valfield.value)) {
	        if (loyaltyCard.test(valfield.value)) {
	            swapImage(document.getElementById(infofield), "good");
	            return true;
	        }
	        else {
	            swapImage(document.getElementById(infofield), "error");
	            setfocus(valfield);
	            return false;
	        }
	        
	        return false;
	    }
	    else return true;
    }

    function validateBoosterNumber(valfield, infofield) {
    
        if (!emptyString.test(valfield.value)) {
	        if (boosterNumber.test(valfield.value)) {
	            swapImage(document.getElementById(infofield), "good");
	            return true;
	        }
	        else {
	            swapImage(document.getElementById(infofield), "error");
	            setfocus(valfield);
	            return false;
	        }
	        
	        return false;
	    }
	    else return true;
    }
    
    function validateRequiredState(valfield, infofield) {
    
        if (emptyString.test(valfield.value) || trim(valfield.value) == '00') {
                //document.getElementById(infofield).style.display="block";
                swapImage(document.getElementById(infofield), "error");
                setfocus(valfield);
                return false;
        }
        else {
                //document.getElementById(infofield).style.display="none";
                swapImage(document.getElementById(infofield), "good");
                return true;
        }
        
        return true;
            
    }
    
    function validateString(valfield, infofield) {
        if (!emptyString.test(valfield.value)) {
	        if (varString.test(valfield.value)) {
	            swapImage(document.getElementById(infofield), "good");
	            return true;
	        }
	        else {
	            swapImage(document.getElementById(infofield), "error");
	            setfocus(valfield);
	            return false;
	        }
	        
	        return false;
	    }
	    else return true;
    }
    
    function validateZip(valfield, infofield) {
    	if (!emptyString.test(valfield.value)) {
			        if (zipCode.test(valfield.value)) {
			            swapImage(document.getElementById(infofield), "good");
			            return true;
			        }
			        else {
			        	swapImage(document.getElementById(infofield), "error");
			            setfocus(valfield);
			            return false;
			        }
		        
		        return false;
		}
      else return true;
    } 
    function validateHH(valfield, infofield) {
    
	        if (!emptyString.test(valfield.value)) {
			        if (houseHold.test(valfield.value)) {
			            swapImage(document.getElementById(infofield), "good");
			            return true;
			        }
			        else {
			            swapImage(document.getElementById(infofield), "error");
			            setfocus(valfield);
			            return false;
			        }
		        
		        return false;
		    }
	    else return true;
    }
    
    

    