    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 loyaltyCard = /^4[014]\d{9}$/;
    var boosterNumber = /^\d{4}$/;
    var alpha_numeric = /[0-9a-zA-Z]/;
    
    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();
    }

    function trim(str)
    {
        return str.replace(/^\s+|\s+$/g, '');
    }

    function swapImage(myImage, state) {
        if (state == "good") {
            myImage.src = "/vendor/images/validated.gif";
        }
        else {
            myImage.src = "/vendor/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) && email.test(valfield.value)) {
            swapImage(document.getElementById(infofield), "good");
            return true;
        }
        else {
            swapImage(document.getElementById(infofield), "error");
            setfocus(valfield);
            return false;
        }
        
        return false;
    }

    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;
    }