

//************************************************************************************************
// function chkGftListSignUp
//************************************************************************************************
function chkGftListSignUp(f) {
    var errMsg = "";
    var formValid = true;

    var email = alltrim(document.getElementById("txtEmail").value)
    if (chkElement("txtEmail", "lblEmail") == false) {
        errMsg = errMsg + "Please enter your email address.<br>"
        formValid = false
    } else {
        if (!isEmail(email)) {
            errMsg = errMsg + "* Your email is invalid.<br>"
            setFieldRed("txtEmail", "lblEmail")
            formValid = false
        }
    }

    var txtFirstName = alltrim(document.getElementById("txtFirstName").value)
    if (chkElement("txtFirstName", "lblFname") == false) {
        errMsg = errMsg + "Please enter your first name.<br>"
        formValid = false
    }
    var txtLastName = alltrim(document.getElementById("txtLastName").value)
    if (chkElement("txtLastName", "lblLname") == false) {
        errMsg = errMsg + "Please enter your last name.<br>"
        formValid = false
    }
    //if (formValid == false) {
    //    document.getElementById("errInputNotMatch").innerHTML = "Please enter all the missing information."
    //}
  
    return formValid
}


//************************************************************************************************
// function chkFrmEmailSignUp
//************************************************************************************************
function chkFrmEmailSignUp(f)
{
	var errMsg = "";
	var formValid = true;
	
	var email = alltrim(document.getElementById("txtEmail").value)
	if (chkElement("txtEmail", "lblEmail") == false)
	{
		errMsg = "Please enter your email address.<br>"
		formValid = false
	} else
	{
		if (!isEmail(email))
		{
			errMsg = "* Your email is invalid.<br>"
			setFieldRed("txtEmail", "lblEmail")
			formValid = false
		}
	}
	
	var email2 = alltrim(document.getElementById("txtEmail2").value)
	if (chkElement("txtEmail2", "lblEmail2") == false)
	{
		errMsg = errMsg + "Please verify your email address.<br>"
		formValid = false
	} else
	{
		if (!isEmail(email2))
		{
			errMsg = errMsg + "* Your email is invalid.<br>"
			setFieldRed("txtEmail2", "lblEmail2")
			formValid = false
		}
	}

	if ((formValid == true) && (email != email2))
	{
		errMsg = "Your emails do not match.<br>"
		setFieldRed("txtEmail", "lblEmail")
		setFieldRed("txtEmail2", "lblEmail2")
		formValid = false
	}
	
	if (chkElement("txtZip", "lblZip") == false)
	{
		errMsg = errMsg + "Please enter your zip code.<br>"
		formValid = false
	}
	
	if (formValid == false)
	{
		document.getElementById("errInputNotMatch").innerHTML = errMsg
	}

	return formValid
}


//************************************************************************************************
// function chkFrmCatalogRequest
//************************************************************************************************
function chkFrmCatalogRequest(f)
{
	var FirstName = alltrim(document.getElementById("txtFirstName").value)
	if (FirstName.length < 2)
	{
		alert("Please enter your first name. (least two letters)")
		document.getElementById("txtFirstName").value = FirstName;
		document.getElementById("txtFirstName").focus();
		return false;
	}
	
	var LastName = alltrim(document.getElementById("txtLastName").value)
	if (LastName.length < 2)
	{
		alert("Please enter your last name. (least two letters)")
		document.getElementById("txtLastName").value = LastName;
		document.getElementById("txtLastName").focus();
		return false;
	}
	
	var City = alltrim(document.getElementById("txtCity").value)
	if (City.length < 2)
	{
		alert("Please enter your first name. (least two letters)")
		document.getElementById("txtCity").value = City;
		document.getElementById("txtCity").focus();
		return false;
	}
	
	var xState = alltrim(document.getElementById("txtState").value)
	if (xState == "")
	{
		alert("Please select your state.")
		document.getElementById("txtState").focus();
		return false;
	}
	
	return true
}


//************************************************************************************************
// function chkFrmGetPW
//************************************************************************************************
function chkFrmGetPW(f)
{

	var email = alltrim(document.getElementById("txtGetPWEmail").value)

	if (isEmpty(email))
	{
		alert('Please enter your email.');
		document.getElementById("txtGetPWEmail").value = email;
		document.getElementById("txtGetPWEmail").focus();
		return false;
	} else
	{
		if (!isEmail(email))
		{
			alert('Your email is invalid.');
			document.getElementById("txtGetPWEmail").value = email;
			document.getElementById("txtGetPWEmail").focus();
			return false;
		}
	}
	
	return true
}


//************************************************************************************************
// function chkFrmRegister
//************************************************************************************************
function chkFrmRegister(f)
{
	var validForm = true;
	var validEmail = true;
	var errMSG = "";
	
	document.getElementById("dvErrMsg").innerHTML = "";

	if (chkElement("txtFirstName", "lblFirstName") == false) { validForm = false; }
	if (chkElement("txtLastName", "lblLastName") == false) { validForm = false; }
	
	if (chkElement("txtEmail", "lblEmail") == false)
	{
		validForm = false;
	} else
	{
		if (!isEmail(alltrim(document.getElementById("txtEmail").value)))
		{
			setFieldRed("txtEmail", "lblEmail")
			validEmail = false;
		}
	}
	
	if (chkElement("txtAddress1", "lblAddress1") == false) { validForm = false; }
	
	document.getElementById("dvErrPW").innerHTML = "&nbsp;"
	var pw = alltrim(document.getElementById("txtPassword").value)

	if (chkElement("txtPassword", "lblPassword") == false)
	{
		validForm = false;
	} else
	{
		if (pw.length < 6)
		{
			document.getElementById("dvErrPW").innerHTML = "Your password is invalid. (least 6 letters)"
			setFieldRed("txtPassword", "lblPassword")
			validForm = false;
		}
	}
	
	
	var vfpw = alltrim(document.getElementById("txtVerifyPassword").value)
	if (chkElement("txtVerifyPassword", "lblVerifyPassword") == false)
	{
		validForm = false;
	} else
	{
		if (vfpw.length < 6)
		{
			document.getElementById("dvErrPW").innerHTML = "Your password is invalid. (least 6 letters)"
			setFieldRed("txtVerifyPassword", "lblVerifyPassword")
			validForm = false;
		}
	}

	if (pw != vfpw)
	{
		document.getElementById("dvErrPW").innerHTML = "Your password doesn't match. Please try again."
		setFieldRed("txtPassword", "lblPassword")
		setFieldRed("txtVerifyPassword", "lblVerifyPassword")

		validForm = false;
	}
	
	if (chkElement("txtAddress1", "lblAddress1") == false) { validForm = false; }
	if (chkElement("txtCity", "lblCity") == false) { validForm = false; }
	if (chkElement("txtState", "lblState") == false) { validForm = false; }
	if (chkElement("txtZip", "lblZip") == false) { validForm = false; }
	if (chkElement("txtCountry", "lblCountry") == false) { validForm = false; }
	if (chkElement("txtPhone1", "lblPhone1") == false) { validForm = false; }
			
	if (validForm == false) { errMSG = "Please enter the missing information.<br>"; }
	if (validEmail == false)  { errMSG = errMSG + "Your email is invalid.<br>" }
	
	document.getElementById("dvErrMsg").innerHTML = errMSG;

	return validForm
}


//************************************************************************************************
// function chkFrmSiteReview
//************************************************************************************************
function chkFrmSiteReview(f)
{

	var xName = alltrim(document.getElementById("txtName").value)
	if (xName.length < 2)
	{
		alert("Please enter your name. (least two letters)")
		document.getElementById("txtName").value = xName;
		document.getElementById("txtName").focus();
		return false;
	}

	var xLocation = alltrim(document.getElementById("txtLocation").value)
	if (xLocation.length < 2)
	{
		alert("Please enter your location. (least two letters)")
		document.getElementById("txtLocation").value = xLocation;
		document.getElementById("txtLocation").focus();
		return false;
	}
	
	var xReview = alltrim(document.getElementById("txtReview").value)
	if (xReview.length < 2)
	{
		alert("Please enter your review.")
		document.getElementById("txtReview").value = xReview;
		document.getElementById("txtReview").focus();
		return false;
	}

	return true
}

//************************************************************************************************
// function chkFrmContacts
//************************************************************************************************
function chkFrmContacts(f)
{
	var validForm = true;
	var	validEmail = true;
	var	errMSG = "";

	if (chkElement("txtShipNickname", "lblShipNickname") == false)
	    { validForm = false;	}

	if (chkElement("txtFirstName", "lblFirstName") == false) {
         validForm = false; }
    else {
        if (chkElementLen("txtFirstName", "lblFirstName", 16) == false) {
            alert("Your First Name has exceeded our 16 character limit.");
            validForm = false;
        }
    }

    if (chkElement("txtLastName", "lblLastName") == false) {
        validForm = false;
    }
    else {
        if (chkElementLen("txtLastName", "lblLastName", 16) == false) {
            alert("Your Last Name has exceeded our 16 character limit.");
            validForm = false;
        }
    }

    if (chkElement("txtAddress1", "lblAddress1") == false) {
        validForm = false;
    }
    else {
        if (chkElementLen("txtAddress1", "lblAddress1", 30) == false) {
            alert("Your address has exceeded our 30 character limit. Please use address line 2 to complete your address.");
            validForm = false;
        }
    }
    
	if (chkElementLen("txtAddress2", "lblAddress2", 30) == false) {
	    alert("Your address (line 2) has exceeded our 30 character limit.");
	    validForm = false;
	}

	if (chkElement("txtCity", "lblCity") == false) {
	    validForm = false;
	}
	else {
	    if (chkElementLen("txtCity", "lblCity", 30) == false) {
	        alert("Your city has exceeded our 30 character limit.");
	        validForm = false;
	    }
	}
	

	if (chkElementLen("txtCompanyName", "lblCompany", 30) == false) {
	    alert("Your company name has exceeded our 30 character limit.");
	    validForm = false;
	}	
	
	if (chkElement("txtState", "lblState") == false)
	{	validForm = false;	}
	
	if (chkElement("txtZip", "lblZip") == false)
	{	validForm = false;	}
	
	if (chkElement("txtCountry", "lblCountry") == false)
	{   validForm = false; }

	//added on 09.30.2009 by Todd S.
	errMsg = chkZipCountry('txtZip', 'txtCountry')
	if (errMsg.length > 0) {
	    alert(errMsg);
	    setFieldRed('txtZip', 'lblZip');
	    validForm = false
	}
	
	if (validForm == false)
	{
		errMSG = "Please enter the required information.<br>"
	}

	if (validEmail == false)
	{
		errMSG = errMSG + "Your email is invalid.<br>"
    }

    if (chkElementLen("txtEmail", "lblEmail", 48) == false) {
        alert("Your email address has exceeded our 48 character limit.");
       validForm = false;
    }	
	
	if (errMSG != "")
	{
		document.getElementById("dvErrMSG").innerHTML = errMSG
		return false
	}
	
	
	return true;
}


//************************************************************************************************
// function chkFrmAccount
//************************************************************************************************
function chkFrmAccount(f)
{
	var validForm = true;
	var validForm2 = true;
	var	validEmail = true;
	var	errMSG1 = "";
	var	errMSG2 = "";
	
	document.getElementById("errMsg1").innerHTML = "";

	if (chkElement("txtEmail", "lblEmail") == false) { validForm = false }
	if (chkElement("txtFirstName", "lblFirstName") == false) { validForm = false }
	if (chkElement("txtLastName", "lblLastName") == false) { validForm = false }
	if (chkElement("txtPassword", "lblPassword") == false) { validForm = false }
	if (chkElement("txtPassword2", "lblPassword2") == false) { validForm = false }

	var pw = alltrim(document.getElementById("txtPassword").value)
	var pw2 = alltrim(document.getElementById("txtPassword2").value)
	if (pw.length < 6)
	{
		errMSG1 = "Your password is invalid. (least 6 letters)"
	} else
	{
		if (pw != pw2)
		{
			errMSG1 = "Your password do not match. please enter again!"
			setFieldRed("txtPassword", "lblPassword");
			setFieldRed("txtPassword2", "lblPassword2");
		}
	}
	
	if (!isEmail(alltrim(document.getElementById("txtEmail").value)))
	{
		setFieldRed("txtEmail", "lblEmail");
	}
	
	if (validEmail ==  false)
	{
		errMSG1 = "Your email address is invalid."
	}
		
	if (validForm ==  false)
	{
		errMSG1 = "Please enter all required fields(*)."
	}
	
	document.getElementById("errMsg1").innerHTML = errMSG1;



	document.getElementById("errMsg2").innerHTML = "";

	if (chkElement("txtAddress1", "lblAddress1") == false) { validForm2 = false }
	if (chkElement("txtCity", "lblCity") == false) { validForm2 = false }
	if (chkElement("txtState", "lblState") == false) { validForm2 = false }
	if (chkElement("txtZip", "lblZip") == false) { validForm2 = false }
	if (chkElement("txtCountry", "lblCountry") == false) { validForm2 = false }

	if (validForm2 ==  false)
	{
		errMSG2 = "Please enter all required fields(*)."
	}
	document.getElementById("errMsg2").innerHTML = errMSG2;

    //added on 09.30.2009
	errMSG2 = chkZipCountry("txtZip", "txtCountry")
	if (errMSG2.length > 0) {
	    document.getElementById("errMsg2").innerHTML = errMSG2;
	}

	validForm = true; 
	if ((errMSG1 != "") || (errMSG2 != ""))
	{
		validForm = false;
    }
	
	return validForm
	
	/*
	var FirstName = alltrim(document.getElementById("txtFirstName").value)
	if (isEmpty(FirstName))
	{
		alert("Please enter your first name.")
		document.getElementById("txtFirstName").value = FirstName;
		document.getElementById("txtFirstName").focus();
		return false;
	}

	var LastName = alltrim(document.getElementById("txtLastName").value)
	if (isEmpty(LastName))
	{
		alert("Please enter your last name.")
		document.getElementById("txtLastName").value = LastName;
		document.getElementById("txtLastName").focus();
		return false;
	}
	
	var pw = alltrim(document.getElementById("txtPassword").value)
	var pw2 = alltrim(document.getElementById("txtPassword2").value)
	if (pw != pw2)
	{
		alert("Your password do not match. please enter again!")
		document.getElementById("txtPassword").focus();
		return false;
	}
	
	var Address = alltrim(document.getElementById("txtAddress1").value)
	if (isEmpty(Address))
	{
		alert("Please enter your address.")
		document.getElementById("txtAddress1").value = Address;
		document.getElementById("txtAddress1").focus();
		return false;
	}
	
	var City = alltrim(document.getElementById("txtCity").value)
	if (isEmpty(City))
	{
		alert("Please enter your city name.")
		document.getElementById("txtCity").value = City;
		document.getElementById("txtCity").focus();
		return false;
	}
		
	var xState = alltrim(document.getElementById("txtState").value)
	if (isEmpty(xState))
	{
		alert("Please select your state")
		document.getElementById("txtState").focus();
		return false;
	}
		
		
	var xZip = alltrim(document.getElementById("txtZip").value)
	if (isEmpty(xZip))
	{
		alert("Please enter your zip/postal code")
		document.getElementById("txtZip").focus();
		return false;
	}
		
		
	var xCountry = alltrim(document.getElementById("txtCountry").value)
	if (isEmpty(xCountry))
	{
		alert("Please select your country")
		document.getElementById("txtCountry").focus();
		return false;
	}
	return true
	*/
}





//************************************************************************************************
// function chkElement
//************************************************************************************************
function chkElement(eleIPT, eleLBL)
{
	var eleValid = true
	var eleValue = alltrim(document.getElementById(eleIPT).value)
	if (isEmpty(eleValue))
	{
	    document.getElementById(eleIPT).value = eleValue;
	    setFieldRed(eleIPT, eleLBL);
		eleValid = false;
	} else {
	    resetField(eleIPT, eleLBL);
	}
	
	return eleValid;
}


//************************************************************************************************
// function chkElementLen
//************************************************************************************************
function chkElementLen(eleIPT, eleLBL ,eleLen) {
    var eleValid = true
    var eleValue = alltrim(document.getElementById(eleIPT).value)
    if (eleValue.length > eleLen) {
        setFieldRed(eleIPT, eleLBL);
        eleValid = false;
    } else {
        resetField(eleIPT, eleLBL);
    }
    return eleValid;
}




//************************************************************************************************
// function chkFrmShipping
//************************************************************************************************
function chkFrmShipping(f) {
	var inputElem, inputName, inputValue
	var formvalid = true;
	var v = true;
	var rcid = "";
	var errDV = "";
	var errShipId = 0;
	var i

	for(i=0; i<f.elements.length; i++)
	{
		inputElem	= f.elements[i]
		inputName	= inputElem.name
		inputValue	= inputElem.value
		if (inputName.indexOf("rcid") >= 0 )
		{
		    rcid = inputValue
			errDV = "nfo" + inputValue + "Err"
			document.getElementById(errDV).innerHTML = ""
			document.getElementById(errDV).style.display = "none"
		}

		if (inputName.indexOf("Email") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "To send an e-Gift Certificate, please enter the e-mail address for this recipient."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
			}
		}

		if (inputName.indexOf("FirstName") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
            }
            else {
                if (chkElementLen(inputName, "lbl" + inputName, 16) == false) {
                    alert("Your First Name has exceeded our 16 character limit.");
                    formvalid = false;
                }
	        }
	    }
		
		if (inputName.indexOf("LastName") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
            }
            else {
                if (chkElementLen(inputName, "lbl" + inputName, 16) == false) {
                    alert("Your Last Name has exceeded our 16 character limit.");
                    formvalid = false;
                }
            }	
		}
		
		if (inputName.indexOf("Address1") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field 1111."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
            }
            else {
                if (chkElementLen(inputName, "lbl" + inputName, 30) == false) {
                    alert("Your address has exceeded our 30 character limit. Please use address line 2 to complete your address.");
                    formvalid = false;
                }
            }
        }

        if (inputName.indexOf("Address2") >= 0) {
            if (chkElementLen(inputName, "lbl" + inputName, 30) == false) {
                alert("Your address (line 2) has exceeded our 30 character limit.");
                formvalid = false;
            }
        }        

		if (inputName.indexOf("City") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
            }
            else {
                if (chkElementLen(inputName, "lbl" + inputName, 30) == false) {
                    alert("Your city has exceeded our 30 character limit.");
                    formvalid = false;
                }
            }            
		}
		
		if (inputName.indexOf("State") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
			}
		}
		
		if (inputName.indexOf("Zip") >= 0 )
		{
			if (chkElement(inputName, "lbl" + inputName) == false)
			{
				document.getElementById(errDV).innerHTML = "Please enter all required field."
				document.getElementById(errDV).style.display = "block"
				formvalid = false
			}
		}
		
		if (inputName.indexOf("Country") >= 0 )
		{
		    if (chkElement(inputName, "lbl" + inputName) == false) {
		        document.getElementById(errDV).innerHTML = "Please enter all required field."
		        document.getElementById(errDV).style.display = "block"
		        formvalid = false
		    }
		    else {
		        //added on 09.30.2009 by Todd S.
		        var tmpZip = 'txt' + rcid + 'Zip';
		        var tmpCountry = 'txt' + rcid + 'Country';
		        var tmpShipToName = document.getElementById('lbl' + rcid + 'ShipToNick').value;

		        errMsg = chkZipCountry('txt' + rcid + 'Zip', 'txt' + rcid + 'Country')
		        if (errMsg.length > 0) {
		            alert(tmpShipToName + ': ' + errMsg);
		            setFieldRed('txt' + rcid + 'Zip', 'lbltxt' + rcid + 'Zip');
		            formvalid = false
		        }
		    }
		}
		
		if (inputName.indexOf("ShipMethod") >= 0 && inputElem.type == 'radio')
		{	
			var rad = f.elements[inputName];
			ShipMethodIsChecked = -1;
			for(var xx = 0; xx < rad.length; xx++) if(rad[xx].checked) { ShipMethodIsChecked = xx; break; }
			    if(ShipMethodIsChecked == -1) {
					    alert('You must select a Shipping Method');
					    rad[0].focus();
					    return false;
			    }
/*
			    if (ShipMethodIsChecked > -1)
			    {
				    inputValue = rad[ShipMethodIsChecked].value;
				    //alert(inputName + '-' + inputValue)
				    //alert(inputName + '-' + inputValue)

				    if (inputValue == '64C')
				    {
					    if (document.getElementById('input_DeliveryDate'+rcid+'64C').value == "")
					    {
						    if (errShipId == 0) 
						    {
							    errShipId = i
						    }
						    document.getElementById('hdnShipMsg'+rcid+'64C').innerHTML = "Please select a date for your Gift to Arrive By";
						    formvalid = false
					    } else
					    {
						    document.getElementById('hdnShipMsg'+rcid+'64C').innerHTML = "";
					    }
				    }
    				
				    if (inputValue == '52')
				    {
					    if (document.getElementById('input_DeliveryDate'+rcid+'52').value == "")
					    {
						    if (errShipId == 0) 
						    {
							    errShipId = i
						    }
						    document.getElementById('hdnShipMsg'+rcid+'52').innerHTML = "Please select a date for your Gift to Arrive By";
						    formvalid = false
					    } else
					    {
						    document.getElementById('hdnShipMsg'+rcid+'52').innerHTML = "";
					    }
				    }

//	    		alert(rcid)
				    var slcShipCodes = "-" + inputValue + "-"
				    var allDateCodes = document.getElementById("rd" + rcid + "CodesDeliveryDate").innerHTML;
    				
				    //express OR standard OR rush
				    if (inputValue == '52' || inputValue == '64C' || inputValue == '01') {
					    var minShipDate = new Date('01/01/2001');
					    var dv = f.elements['input_DeliveryDate'+rcid+inputValue].value.split('/');
					    minShipDate = new Date(parseInt(dv[2],10)+2000,parseInt(dv[0])-1,dv[1]);
					    for(var xx = 0; xx < f.elements.length; xx++) if(f.elements[xx].name.indexOf('DateAvail') > -1 && f.elements[xx].name.indexOf('_Desc') == -1 && f.elements[xx].name.indexOf(rcid) > -1) {
						    var dt = new Date(f.elements[xx].value);
						    if(dt > minShipDate) {
							    var descInput = f.elements[f.elements[xx].name+'_Desc'];
							    if(descInput.length) descInput = descInput[0];
							    alert('You cannot have your order arrive by '+(minShipDate.getMonth()+1)+'/'+minShipDate.getDate()+'/'+minShipDate.getFullYear()+' as\n"'+descInput.value+'" will ship after '+(dt.getMonth()+1)+'/'+dt.getDate()+'/'+dt.getFullYear()+'.');
							    //f.elements['input_DeliveryDate'+rcid+(ShipMethodIsChecked == 3 ? '64C' : '52')].focus();
							    var scrollPosition = isIE ? document.body.scrollTop : window.pageYOffset;
							    window.scrollTo(0,scrollPosition - 300);
							    return false;	
						    }
					    }
				    }

//alert(slcShipCodes.length)
//alert(allDateCodes.length)
//alert(slcShipCodes)
//alert("txt" + rcid + inputValue)
//alert(document.getElementById("txt" + rcid + inputValue).value);
//alert(allDateCodes)
//alert(InStr(allDateCodes, slcShipCodes))

			}
*/			
		}
	}
	//return false
	
	
	
	var errInputID = 0
	var ik = 0;
	
	for(i=f.elements.length-5; i> 0; i--)
	{
		inputElem	= f.elements[i]
		inputName	= inputElem.name
		inputValue	= inputElem.value
		if (inputName.indexOf("rcid") >= 0 )
		{
			errDV = "nfo" + inputValue + "Err"
//			alert(errDV)
			if (document.getElementById(errDV).innerHTML != "")
			{
		//	document.getElementById(errDV).focus()
				for (ik = i+1; ik<i+5; ik++)
				{
					if (f.elements[ik].type == 'text')
					{
						document.getElementById(f.elements[ik].name).focus()
						document.getElementById(f.elements[ik].name).blur()
						errInputID = ik
						ik = 1000
					}
				}
				/*
				if (f.elements[i+1].type == 'text')
				{
					document.getElementById(f.elements[i+1].name).focus()
					document.getElementById(f.elements[i+1].name).blur()
					errInputID = i+1
				} else
				{
					if (f.elements[i+2].type == 'text')
					{
						document.getElementById(f.elements[i+2].name).focus()
						document.getElementById(f.elements[i+2].name).blur()
						errInputID = i+2
					}
				}
				*/
			}
		}
	}
	
	if (errShipId !=0) 
	{
	
		if (errInputID == 0)
		{ 	f.elements[errShipId].focus()
		} else
		{
			if (errShipId < errInputID)
			{
				f.elements[errShipId].focus()
			}
		}
	}
/*	



*/
//f.elements[errInputID].value = "asf"
	return formvalid;
}


//************************************************************************************************
// function chkFrmCC
//************************************************************************************************
function chkFrmCC(f)
{	
	var PayPalPayment = document.getElementById("txtPPType").checked
	var BMLPayment = document.getElementById("txtBMLType").checked
	if (PayPalPayment != true && BMLPayment != true )
	{
		// var cName = document.getElementById("txtCCName")
		var cvv = document.getElementById("txtSecurityNumber")
		var CardType = alltrim(document.getElementById("txtCardType").value)
		var formValid = true;
		var formError = "";
		
		document.getElementById("ccErr").innerHTML = ""
		document.getElementById("ccErr").style.display = "none"
		
		if (chkElement("txtCardType", "lblCreditCardType") == false)
		{
			formError = "Please select your payment type.<br>"
			formValid = false
		}
		
		document.getElementById("txtCardNumber").style.border="1px solid #882333";
		document.getElementById("lblCCNumer").style.color="#522b1a";
		
		var CardNumber = alltrim(document.getElementById("txtCardNumber").value)
		if (chkElement("txtCardNumber", "lblCCNumer") == false)
		{
			formError = formError + "Please enter your credit card number.<br>"
			formValid = false
		} else
		{
				if (isValidCreditCard(CardType, CardNumber))
				{

				} else
				{
					formError = formError + "Your credit card number is invalid!<br>"
					document.getElementById("txtCardNumber").style.border="1px solid red";
					document.getElementById("lblCCNumer").style.color="red";
					formValid = false
				}	
				
				
				/*
				if (chkElement("txtSecurityNumber", "lblCCCode") == false)
				{
					// formError = formError + "Please enter your security code.<br>"
					// formValid = false
				} else
				{
					if (CardType == "AX") 
					{
						if (cvv.value.length != 4) {
							formError = formError + "Your security code is invalid!<br>"
							document.getElementById("txtSecurityNumber").style.border="1px solid red";
							document.getElementById("lblCCCode").style.color="red";
							formValid = false
						}
					}
					
					if ((CardType == "VI") || (CardType == "DI") || (CardType == "MC"))
					{
						if (cvv.value.length != 3) {
							formError = formError + "Your security code is invalid!<br>"
							document.getElementById("txtSecurityNumber").style.border="1px solid red";
							document.getElementById("lblCCCode").style.color="red";
							formValid = false
						}
					}
				}
				*/
		}
		
		var today=new Date();
		var mth = today.getMonth() + 1;
		var yr = today.getYear() + 1900;

		if ((chkElement("txtCCMonth", "lblExpirationDate") == false) || (chkElement("txtCCYear", "lblExpirationDate") == false))
		{
			formError = formError + "Please enter your card expiration date.<br>"
			formValid = false
		} else
		{
			if ((parseInt(alltrim(document.getElementById("txtCCMonth").value)) < parseInt(mth)) &&  (parseInt(alltrim(document.getElementById("txtCCYear").value)) == "2008"))
			{
				formError = formError + "Your credit card is expired.<br>"
				setFieldRed("txtCCMonth", "lblExpirationDate")
				formValid = false
			}
		}
		
		if (formValid == false)
		{
			document.getElementById("ccErr").innerHTML = formError
			document.getElementById("ccErr").style.display = "block"
		}
	}
	
	return formValid
}


//************************************************************************************************
// function validate
//************************************************************************************************
function validate(f)
{
	var v
	v = chkElement(f.name, 'lbl' + f.name)
}


//************************************************************************************************
// function chkFrmEmailFriend2
//************************************************************************************************
function chkFrmEmailFriend2(f)
{

	var FriendEmail = alltrim(document.getElementById("txtFriendEmail").value)

	if (isEmpty(FriendEmail))
	{
		alert('Please enter your friend email.');
		document.getElementById("txtFriendEmail").value = FriendEmail;
		document.getElementById("txtFriendEmail").focus();
		return false;
	} else
	{
		if (!isEmail(FriendEmail))
		{
			alert('Your friend email is invalid.');
			document.getElementById("txtFriendEmail").value = FriendEmail;
			document.getElementById("txtFriendEmail").focus();
			return false;
		}
	}

	var YourEmail = alltrim(document.getElementById("txtYourEmail").value)

	if (isEmpty(YourEmail))
	{
		alert('Please enter your email address.');
		document.getElementById("txtYourEmail").value = YourEmail;
		document.getElementById("txtYourEmail").focus();
		return false;
	} else
	{
		if (!isEmail(FriendEmail))
		{
			alert('Your email is invalid.');
			document.getElementById("txtYourEmail").value = YourEmail;
			document.getElementById("txtYourEmail").focus();
			return false;
		}
	}

	return true;
}


//************************************************************************************************
// function chkFrmGiftLists
//************************************************************************************************
function chkFrmGiftLists(f)
{
	var glTitle = document.getElementById("txtTitle")

	if (chkElement("txtTitle", "lblTitle") == false)
	{
		document.getElementById("dvErrMSG").innerHTML = "Please enter a title for your gift list."
		glTitle.focus()
		return false
	}

	return true
}


//************************************************************************************************
// function chkFrmSaveGiftList
//************************************************************************************************
function chkFrmSaveGiftList(f)
{
	var GiftList = alltrim(document.getElementById("GiftList").value)
	if (isEmpty(GiftList))
	{
		alert("Please select a gift list.")
		document.getElementById("GiftList").focus();
		return false;
	}
	
	if (GiftList == "new")
	{
		var newGiftList = alltrim(document.getElementById("txtNewGiftList").value)
		if (isEmpty(newGiftList))
		{
			alert("Please enter new gift list.")
			document.getElementById("txtNewGiftList").focus()
			return false
		}
	}
	
	var sltRecipient = alltrim(document.getElementById("sltRecipient").value)
	if (isEmpty(sltRecipient))
	{
		alert("Please select a recipient.")
		document.getElementById("sltRecipient").focus();
		return false;
	}
	
	if (sltRecipient == "new")
	{
		var NewRecipient = alltrim(document.getElementById("txtNewRecipient").value)
		if (isEmpty(NewRecipient))
		{
			alert("Please enter new recipient.")
			document.getElementById("txtNewRecipient").focus()
			return false
		}
	}
	return true
}


//************************************************************************************************
// function resetField
//************************************************************************************************
function resetField(iTxt, iLabel)
{
	document.getElementById(iTxt).style.border	= "1px solid #882333";
	document.getElementById(iLabel).style.color	= "#522b1a";
}

//************************************************************************************************
// function setFieldRed
//************************************************************************************************
function setFieldRed(iTxt, iLabel)
{
	document.getElementById(iTxt).style.border	= "1px solid red";
	document.getElementById(iLabel).style.color	= "red";
}

//************************************************************************************************
// function chkFrmOrderLogin
//************************************************************************************************
function chkFrmOrderLogin(f)
{
	var errMsg = "";
	var validFrom = true;
	document.getElementById("dvErrMsg").innerHTML = "";

	if (chkElement("txtLoginEmail", "lblLoginEmail") == false)
	{
		errMsg = "Please enter your email.<br>";
		validFrom = false;
	} else
	{
		if (!isEmail(alltrim(document.getElementById("txtLoginEmail").value)))
		{
			errMsg = "Your email is invalid.<br>";
			setFieldRed("txtLoginEmail", "lblLoginEmail")
			validFrom = false;
		}
	}

	if (chkElement("txtLoginPassword", "lblLoginPW") == false)
	{
		errMsg = errMsg + "Please enter your password.<br>";
		validFrom = false;
	} else
	{
		var pw = alltrim(document.getElementById("txtLoginPassword").value)
		if (pw.length < 2)
		{
			errMsg = errMsg + "Your password is invalid. (least 2 letters)";
			setFieldRed("txtLoginPassword", "lblLoginPW")
			validFrom = false;
		}
	}
	
	if (validFrom == false) {
		document.getElementById("dvErrMsg").innerHTML = errMsg;
	}
	
	return validFrom
}

//************************************************************************************************
// function chkFrmContactUs
//************************************************************************************************
function chkFrmContactUs(f)
{

	var errMsg = "";
	var validFrom = true;
	var validEmail = true;
	document.getElementById("dvErrMsg").innerHTML = "";

	if (chkElement("txtEmail", "lblEmail") == false)
	{
		validFrom = false;
	} else
	{
		if (!isEmail(alltrim(document.getElementById("txtEmail").value)))
		{
			validEmail = false;
			setFieldRed("txtEmail", "lblEmail")
		}
	}
	
	
	if (chkElement("txtFirstName", "lblFirstName") == false)
	{
		validFrom = false
	}
	if (chkElement("txtLastName", "lblLastName") == false)
	{
		validFrom = false
	}
	if (chkElement("txtZip", "lblZip") == false)
	{
		validFrom = false
	}
	if (chkElement("txtSubject", "lblSubject") == false)
	{
		validFrom = false
	}
	if (chkElement("txtQuestion", "lblQuestion") == false)
	{
		validFrom = false
	}
	
	
	if (validFrom == false) {
		errMsg = "Please enter all the missing information.<br>"
	}
	
	if (validEmail == false) {
		errMsg = errMsg + "Your email is invalid!<br>"
	}

	if ((validFrom == false) || (validEmail == false)) {
		document.getElementById("dvErrMsg").innerHTML = errMsg;
		validFrom = false;
	}
	
	return validFrom;
}


//************************************************************************************************
// function frmChkPromos
//************************************************************************************************
function frmChkPromos(f)
{
	document.getElementById("lblErrMsgPromo").innerHTML = "&nbsp;"
	if (chkElement("txtPromoCode", "lblPromoCode") == false)
	{
		document.getElementById("lblErrMsgPromo").innerHTML = "Please enter your source Code!"
		return false;
	}	
	
	return true;
}


//************************************************************************************************
// function frmChkCert
//************************************************************************************************
function frmChkCert(f)
{
	document.getElementById("lblErrMsgCertificate").innerHTML = "&nbsp;"
	if (chkElement("txtCertCoupon", "lblErrMsgCertificate") == false)
	{
		document.getElementById("lblErrMsgCertificate").innerHTML = "Please enter your code!"
		return false;
	}	
	
	return true;
}


//************************************************************************************************
// function chkDefaultCountry
//************************************************************************************************
function chkDefaultCountry(iState, iCountry) {
    var myStateArray = createUSAStateArray();
    var myState = iState.value;
    var i;
    
    //check for US default
    for (i = 1; i < myStateArray.length; i++) {
        if (myState == myStateArray[i]) {
            setDefaultCountry(iCountry, myStateArray[0]);
            return true;
        }
    }
    //check for CA default
    var myStateArray = createCandaStateArray();
    for (i = 1; i < myStateArray.length; i++) {
        if (myState == myStateArray[i]) {
            setDefaultCountry(iCountry, myStateArray[0]);
            return true;
        }
    }
    //reset the selection to the begining
    document.getElementById(iCountry).options[0].selected = true;
        
    return true;
}

//************************************************************************************************
// function createCandaStateArray
//************************************************************************************************
function createCandaStateArray() {
    //the first entry is the country's TEXT name for the associated states/provinces
    return (new Array("CANADA", "NU", "AB", "BC", "MB", "NB", "NL", "NS", "NT", "ON", "PE", "QC", "SK", "YT"));
}


//************************************************************************************************
// function createUSAStateArray
//************************************************************************************************
function createUSAStateArray() {
    //the first entry is the country's TEXT name for the associated states/provinces
    return (new Array("USA", "AA", "AE", "AK", "AL", "AP", "AR", "AZ", "CA", "CO", "CT", "DC", "DE", "FL", "GA", "GU", "HI", "IA", "ID", "IL", "IN", "KS", "KY", "LA", "MA", "MD", "ME", "MI", "MN", "MO", "MS", "MT", "NC", "ND", "NE", "NH", "NJ", "NM", "NV", "NY", "OH", "OK", "OR", "PA", "PR", "RI", "SC", "SD", "TN", "TX", "UT", "VA", "VI", "VT", "WA", "WI", "WV", "WY"));
}


//************************************************************************************************
// function setDefaultCountry
//************************************************************************************************
function setDefaultCountry(iCountryObj, iCountryName) {
    var j;
    for (j = 0; j < document.getElementById(iCountryObj).options.length; j++) {
        if (document.getElementById(iCountryObj).options[j].text == iCountryName) {
            document.getElementById(iCountryObj).options[j].selected = true;
            return true;
        }
    }
}

