// Canadian JS Estore customizations
// included on all store pages

// Set ca_store integration cookie: shopper_id|cart_size

var CartCookie = {
    cart_size: Number.NaN,
    
    init: function() {
        // get shopper ID
        this.shopper_id = jQuery("#uniqueId").val();
        
        // grab item count on regular page
        if (jQuery("#ServerPartsDescDiv").length) this.cart_size = jQuery("#ServerPartsDescDiv a").length;
        
        // grab item count on shopping cart page
        if (jQuery("#_ctl0_MainContent_myBasket_CartTitleText").length) this.cart_size = jQuery(":text[name$=ItemQuantity]").length;

        this.updateCookie();
    },
    
    updateCookie: function() {
        if (isNaN(this.cart_size)) return;
        
        var value = this.shopper_id + '|' + this.cart_size;
        document.cookie = "ca_store=" + escape(value) + "; domain=.hp.com; path=/";
        if (window.console) console.log(this.shopper_id + '|' + this.cart_size);
    }
};


// grab item count on regular page (add event)
if (window.OnCompleteAddItemToCart) {
    window.__OnCompleteAddItemToCart = window.OnCompleteAddItemToCart;
    window.OnCompleteAddItemToCart = function(result) {
        CartCookie.cart_size += 1;
        CartCookie.updateCookie();
        return window.__OnCompleteAddItemToCart(result);
    };
}

// alternate add event on some pages
if (window.OnCompleteAddToCart) {
    window.__OnCompleteAddToCart = window.OnCompleteAddToCart;
    window.OnCompleteAddToCart = function(result) {
        CartCookie.cart_size += 1;
        CartCookie.updateCookie();
        return window.__OnCompleteAddToCart(result);
    };
}



jQuery(function() { CartCookie.init(); } );