	//RegExp for e-mail address validation
	re1 = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})$/;

    //RegExp for simple address validation - no PO Box addresses
    re4 = /^.*[Pp]{1}[\. ]*[Oo]{1}[\. ]*[Bb]{1}[Oo]{1}[Xx]{1}.*$/;

    //RegExp for zip codes
    re2 = /^\d{5}$/;

    //RegExp for names
    re3 = /^[a-zA-Z].*$/;

    //RegExp for phone numbers (currently not in use)
    //re3 = /^\(?\d{3}([-\. /]|(\)|\) ))?\d{3}[-\. ]?\d{4}$/;


    function IsNumeric(val)
    {
    	//Uses a Regular Expression to determine if a string represents a numeric value

    	reNum = /^\d+[\.]?\d*$/;

        if (reNum.test(val))
        	return true;
        else
    		return false;
    }

    function isGuestbookValid(accountForm)
    {
        if(accountForm.txtFName.value.length == 0 ||!re3.test(accountForm.txtFName.value))
        {
        	alert("Please provide your First and Last Name.");
            accountForm.txtFName.focus();
            return false;
        }
        if(accountForm.txtLName.value.length == 0 ||!re3.test(accountForm.txtLName.value))
        {
        	alert("Please provide your First and Last Name.");
            accountForm.txtLName.focus();
            return false;
        }
    	//Validation for the form during the checkout process
        if(accountForm.txtEMail.value.length = 0 || !re1.test(accountForm.txtEMail.value))
        {
        	alert("Please provide a valid e-mail address.");
            accountForm.txtEMail.focus();
            return false;
        }
        if(accountForm.txtReferral.value == "")
        {
        	alert("Please indicate how you heard about Jewelry Explosion.");
            accountForm.txtReferral.focus();
            return false;
        }

        //If all checks pass, the form is valid
        return true;
    }

    function isContactFormValid(accountForm)
    {
        if(accountForm.txtName.value == "" ||!re3.test(accountForm.txtName.value))
        {
        	alert("Please provide your Name.");
            accountForm.txtName.focus();
            return false;
        }
    	//Validation for the form during the checkout process
        if(accountForm.txtEMail.value == "" || !re1.test(accountForm.txtEMail.value))
        {
        	alert("Please provide a valid e-mail address.");
            accountForm.txtEMail.focus();
            return false;
        }
        if(accountForm.txtSubject.value == "")
        {
        	alert("Please provide a Subject for your message.");
            accountForm.txtSubject.focus();
            return false;
        }
        if(accountForm.taComments.value == "")
        {
        	alert("Please provide your Comments.");
            accountForm.taComments.focus();
            return false;
        }

        //If all checks pass, the form is valid
        return true;
    }

    function isAccountFormValid(accountForm)
    {
        if(accountForm.txtFName.value == "" ||!re3.test(accountForm.txtFName.value))
        {
        	alert("Please provide your First Name.");
            accountForm.txtFName.focus();
            return false;
        }
        if(accountForm.txtLName.value == "" || !re3.test(accountForm.txtLName.value))
        {
        	alert("Please provide your Last Name.");
            accountForm.txtLName.focus();
            return false;
        }
    	//Validation for the form during the checkout process
        if(accountForm.txtEMail.value == "" || !re1.test(accountForm.txtEMail.value))
        {
        	alert("Please provide a valid e-mail address.");
            accountForm.txtEMail.focus();
            return false;
        }
        if(accountForm.txtAddress1.value == "")
        {
        	alert("Please provide your Street Address.");
            accountForm.txtAddress1.focus();
            return false;
        }
        if(re4.test(accountForm.txtAddress1.value))
        {
        	alert("Please provide a residential address. We are unable to ship to P.O. boxes");
            accountForm.txtAddress1.focus();
            return false;
        }
        if(accountForm.txtCity.value == "")
        {
        	alert("Please provide the name of your City.");
            accountForm.txtCity.focus();
            return false;
        }
        if(accountForm.selState.value == "--")
        {
        	alert("Please select a State.");
            accountForm.selState.focus();
            return false;
        }
        if(accountForm.txtZip.value == "" || !re2.test(accountForm.txtZip.value))
        {
        	alert("Please enter a valid Zip Code.");
            accountForm.txtZip.focus();
            return false;
        }

        //If all checks pass, the form is valid
        return true;
    }

    function confirmOptions(sizeDDL, qty)
    {
        if((document.getElementById(sizeDDL).length > 1) && (document.getElementById(sizeDDL).value == "--"))
        {
            alert("Please select a size.");
            document.getElementById(sizeDDL).focus();
            return false;
        }
        else if((document.getElementById(qty).value < 1) || (!IsNumeric(document.getElementById(qty).value)))
        {
            alert("Please enter a quantity.");
            document.getElementById(qty).focus();
            return false;
        }

        return true;
    }
