﻿    function getSelectedCartItemID(bSavedProducts) {
    
        var selected="";
        var i;
        var chkbox;
        var nArrayCount;
        
        if(!bSavedProducts){
            nArrayCount = document.forms['aspnetForm'].chkProductID.length
        }
        else {
            nArrayCount = document.forms['aspnetForm'].chkSavedProductID.length
        }
        
        for(i=0;i<nArrayCount;i++) {        
            if(!bSavedProducts){
                chkbox = document.forms['aspnetForm'].chkProductID[i];
            }
            else {
                chkbox = document.forms['aspnetForm'].chkSavedProductID[i];
            }
            if(chkbox.checked) {
                selected += chkbox.value + ",";
            }            
        }
        if(i==0){
            if(!bSavedProducts){
                chkbox = document.forms['aspnetForm'].chkProductID;
            }
            else {
                chkbox = document.forms['aspnetForm'].chkSavedProductID;
            }
            if(chkbox.checked) {
                selected += chkbox.value + ",";
            }            
        }
        selected=selected.substring(0,selected.length-1);
        return selected;
    }
    
    function SaveForLater() {            
        nCartItemIDs = getSelectedCartItemID(false);
        if(nCartItemIDs!="") {
            document.location.href="SaveForLater.aspx?id="+nCartItemIDs+"&dir=1&return=/cart/cart.aspx";            
        }
        else {
            alert('No item selected.');
        }
    }

    function MoveToCart() {    
        nCartItemIDs = getSelectedCartItemID(true);
        if(nCartItemIDs!="") {
            document.location.href="SaveForLater.aspx?id="+nCartItemIDs+"&dir=0&return=/cart/cart.aspx";            
        }
        else {
            alert('No item selected.');
        }
    }

    function RemoveFromCart(bSaveForLater) {    
        nCartItemIDs = getSelectedCartItemID(bSaveForLater);
        if(nCartItemIDs!="") {
            if(!confirm("Do you really want to remove these items?")) return;
            document.location.href="RemoveItems.aspx?id="+nCartItemIDs+"&return=/cart/cart.aspx";            
        }
        else {
            alert('No item selected.');
        }
    }
    
    function updateQty(id) {
        document.location.href = "updateQty.aspx?id=" + id + "&qty=" + document.getElementById("Qty"+id).value;
    }
    
    var BlinkStatusToggle;
    var ErrorStatusToggle;
    
    function errorStatus() {
        clearInterval(BlinkStatusToggle);
        document.getElementById("lblCodeCheckStatus").innerHTML = "<table cellpadding='0' cellspacing='0'><tr><td><img src='/images/icon_error.gif'></td><td>&nbsp;<font style='color:#a00000'>Unable to retrieve Promo Code details, please try again!</font></td></tr></table><br>";
    }
    
    function blinkCheckStatus() {        
        if(document.getElementById("lblCodeCheckStatus").className=="ShowCodeCheckStatus") {
            document.getElementById("lblCodeCheckStatus").className="HideCodeCheckStatus"
        }
        else {
            document.getElementById("lblCodeCheckStatus").className="ShowCodeCheckStatus"
        }
    }
    
    function applyPromoCode(bApply) {    
    
        var szReferralCode = document.getElementById("txtReferralCode").value.trim();
        var szPromoCode = document.getElementById("txtPromoCode").value.trim();

        if ((szReferralCode == "") && (szPromoCode == "")) {
            document.getElementById("lblCodeCheckStatus").innerHTML = "<table cellpadding='0' cellspacing='0'><tr><td><img src='/images/icon_error.gif'></td><td>&nbsp;<font style='color:#a00000'>Please enter a Referral or Promo Code!</font></td></tr></table><br>";
            return;
        }
        
        // start checking promo code...
        
        if (!bApply) {
            document.location.href="applyPromoCode.aspx?rcode=&pcode=";
        }
        else {       
            document.getElementById("lblCodeCheckStatus").innerHTML = "Checking in progress...<br><br>";
            BlinkStatusToggle = setInterval("blinkCheckStatus()",700);
            ErrorStatusToggle = setInterval("errorStatus()",10000); // fail if ajax took 10 secs         
            var szReferralCode = document.getElementById("txtReferralCode").value;
            var szPromoCode = document.getElementById("txtPromoCode").value
            base.checkPromoCode(szReferralCode, szPromoCode,
                function(data) {
                    if (document.getElementById("txtPromoCode").value != "TESTTIMEOUT") {
                        clearInterval(BlinkStatusToggle);
                        clearInterval(ErrorStatusToggle);
                        if (data.value) {                            
                            if (szReferralCode != "") {
                                var s = base.changeReferralCookies(szReferralCode).value;
                                document.getElementById("lblCodeCheckStatus").innerHTML = '';
                            }
                            if (szPromoCode != "") {
                                document.location.href = "applyPromoCode.aspx?rcode=" + document.getElementById("txtReferralCode").value +
                                                    "&pcode=" + document.getElementById("txtPromoCode").value;
                            }
                        }
                        else {
                            document.getElementById("lblCodeCheckStatus").innerHTML = "<table cellpadding='0' cellspacing='0'><tr><td><img src='/images/icon_error.gif'></td><td>&nbsp;<font style='color:#a00000'>Invalid Referral Code or Promo Code!</font></td></tr></table><br>";
                        }
                    }
                }
            );
        }
    }
