// display the subtotal by copying it from the hidden div into the display td
function displaySubtotal() {
	var subtotal = document.getElementById("subtotalValue").innerHTML;
	if (!subtotal)
		subtotal = 0;
	document.getElementById("subtotal").innerHTML = convertToCurrency(subtotal);
	
	if (subtotal > 0) {
		var o = document.getElementById("continueCheckout");
		if (o)
			o.style.display = "block";
		if (subtotal >= 100) {
		    o = document.getElementById("continueCheckoutButton");		
		    if (o)
			    o.style.display = "block";
		} else {		
		    o = document.getElementById("noCheckout");		
		    if (o)
			    o.style.display = "block";
		}
	}
	
	return;
}

function editAccount() {
    var frm = document.getElementById("cartForm");
    frm.action = "account.asp";
    frm.submit();
}

function useNewAddress() {
	document.getElementById("cartForm").addressID.value = "";
}

function selectAddress(addressId) {
	
	var frm = document.getElementById("cartForm");
	
	frm.company.value = document.getElementById("company_" + addressId).innerHTML;
	frm.address1.value = document.getElementById("address1_" + addressId).innerHTML;
	frm.address2.value = document.getElementById("address2_" + addressId).innerHTML;
	
	frm.city.value = document.getElementById("city_" + addressId).innerHTML;
	frm.state.value = document.getElementById("state_" + addressId).innerHTML;
	frm.zip.value = document.getElementById("zip_" + addressId).innerHTML;
	
	frm.addressID.value = addressId;
}

function clearAddress() {

	var frm = document.getElementById("cartForm");
	
	frm.attention.value = "";
	frm.company.value = "";
	frm.address1.value = "";
	frm.address2.value = "";			
	frm.city.value = "";
	frm.state.value = "";
	frm.zip.value = "";
	frm.phone.value = "";
	frm.addressID.value = "";
}

function checkContactInfo(checkAll) {

    var msg = "";    
	var frm = document.getElementById("cartForm");

    if (frm.emailAddress) {
        if (checkAll && frm.name.value == "") {
		    msg += "Please enter your name.<br />"
	    }
        if (!isValidEmail(frm.emailAddress.value)) {
		    msg += "Please enter a valid email address.<br />";
	    }
        if (frm.password.value == "") {
		    msg += "Please enter a password.<br />";
	    }
	}
    return msg;
}

function continueCheckout_Step1(checkAll) {

	var frm = document.getElementById("cartForm");

    var msg = checkContactInfo(checkAll);

	if (msg == "") {
		if (checkAll && frm.password.value != frm.password2.value) {
		    var msgSpan = document.getElementById("errorMessage");
		    msgSpan.innerHTML = "Your passwords do not match.";
		    msgSpan.style.display = "inline";
		    return false;
		} else {		
		    var msgSpan = document.getElementById("errorMessage");
		    if (msgSpan) {
		        msgSpan.innerHTML = "Your information is being verified, one moment please.";
		        msgSpan.style.display = "inline";
		    }
    		
		    msgSpan = document.getElementById("errorMessageNote");
		    if (msgSpan) {
		        msgSpan.innerHTML = "Your information is being verified, one moment please.";
		        msgSpan.style.display = "inline";
		    }
    	
		    frm.actionSelected.value = "completeCartStep";	
		    frm.submit();
		    return true;
		}
	} else {		
		var msgSpan = document.getElementById("errorMessage");
		msgSpan.innerHTML = msg;
		msgSpan.style.display = "inline";
		return false;
	}
}

function continueCheckout_Step2() {
	
	var frm = document.getElementById("cartForm");
	
	if (validateAddressForm(frm, true, true)) {
		
		var msgSpan = document.getElementById("errorMessage");
		msgSpan.innerHTML = "Your address is being verified, one moment please.";
		msgSpan.style.display = "inline";
		
		msgSpan = document.getElementById("errorMessageNote");
		msgSpan.innerHTML = "Your information is being verified, one moment please.";
		msgSpan.style.display = "inline";
	
		frm.actionSelected.value = "completeCartStep";	
		frm.submit();
		return true;
	} else {
		return false;
	}
}

function continueCheckoutBilling() {

	var frm = document.getElementById("cartForm");
	
	if (validateAddressForm(frm, false, true) && validCreditCardInfo(frm)) {
		
		var msgSpan = document.getElementById("errorMessage");
		msgSpan.innerHTML = "Your information is being verified, one moment please.";
		msgSpan.style.display = "inline";
	
		frm.actionSelected.value = "completeCartStep";	
		frm.submit();
		return true;
	} else {
		return false;
	}
}

function continueCheckoutPlaceOrder() {
	
	var frm = document.getElementById("cartForm");
		
	var msgSpan = document.getElementById("errorMessage");
	msgSpan.innerHTML = "Validating your order, one moment please";
	msgSpan.style.display = "inline";
		
	frm.submit();
}

function emptyCart() {
			
	var frm = document.getElementById("cartForm");
	var inputs = frm.getElementsByTagName("input");
	var inpt;
	
	for (var i=0; i<inputs.length; i++) {
	
		inpt = inputs[i];
		
		if (inpt.name.match("qty_*"))
			inpt.value = "0";
	}
	
	updateCart();
}

function updateCart() {

	var frm = document.getElementById("cartForm");
	frm.actionSelected.value = "updateEntireCart";
		
	var msgSpan = document.getElementById("errorMessage");
	msgSpan.innerHTML = "Your cart is being updated, one moment please.";
	msgSpan.style.display = "inline";
	
	frm.submit();
}

function removeFromCart(cartId) {
	
	var frm = document.getElementById("cartForm");
	document.getElementById("actionSelected").value = "removeFromCart";
	document.getElementById("CartID").value = cartId;
	frm.submit();
}

function validCreditCardInfo(frm) {

	var msg = "";
	
	if (frm.ccNumber.value == null || frm.ccNumber.value.length <= 7) {		
			msg += "Enter a valid credit card number.<br />";
	}
	if (frm.ccExactName.value == null || frm.ccExactName.value.length <= 7) {		
			msg += "Enter a valid name from the credit card.<br />";
	}
	//if (frm.ccCode.value == null || frm.ccCode.value.length <= 2) {		
	//		msg += "Enter a valid credit card code.<br />";
	//}
	var now = new Date();
	var val = now.getYear();
	if (val < 2005)
	    val = 2006;
	if (frm.expiresYear.options[frm.expiresYear.selectedIndex].value == val) {
	    if (frm.expiresMonth.options[frm.expiresMonth.selectedIndex].value <= now.getMonth()) {	    	
			msg += "Your card has expired.  Please try a new card or re-enter a valid expiration date.<br />";
	    }
	}
	if (msg != "") {	
		var msgSpan = document.getElementById("errorMessageCC");
		if (msgSpan) {
			msgSpan.innerHTML = msg;
			msgSpan.style.display = "inline";
		}
		return false;
	} 
	return true;
}

