Rev 23347 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
$(function() {$(".cart_icon_header").live('click', function() {loadCart("main-content");});$(".cart-checkout").live('click', function() {checkout("main-content");});$(".add-to-bag").live('click', function() {var itemId = $(this).attr('data');$("#bagModel .itemId").val(itemId);$("#bagModel .quantity").val(0);jQuery.ajax({url: context+"/checkItemAvailability/?itemId="+itemId,type: 'GET',contentType:'application/json',async: false,success: function (data) {var obj = JSON.parse(data);console.log(obj);console.log(obj.displayName);$(".modal-body h4.bagModalProductInfo.modelHeaderCustom > span").text(obj.displayName);$(".modal-body h4.bagModalAvailability.modelHeaderCustom > span").text(obj.availability);$("#bagModel .availability").val(obj.availability);},cache: false,processData: false});});//addToBagButton$("#addToBagButton").live('click', function() {var itemId = $(this).attr('data');var itemId = $("#bagModel .itemId").val();var tempAvailability = $("#bagModel .availability").val();var quantity = $("#bagModel .quantity").val();if (!quantity || parseInt(quantity) <= 0 || isNaN(parseInt(quantity)) || quantity.indexOf('.') != -1){alert("Please enter valid quantity");return;}jQuery.ajax({url: context+"/checkItemAvailability/?itemId="+itemId,type: 'GET',contentType:'application/json',async: false,success: function (data) {var obj = JSON.parse(data);console.log(obj);if (obj.availability < parseInt(quantity) || obj.availability == 0){alert("You don't have enough inventory of this item");return;}var obj = {'itemId':obj.itemId,'displayName':obj.displayName,'quantity':parseInt(quantity),'iconUrl':obj.iconUrl};console.log(obj);addItemInLocalStorage(obj);alert("Item added to bag successfully");$('#bagModel').modal('hide');},cache: false,processData: false});});$(".cart-trash").live('click',function(){var itemId = $(this).attr('data');removeItemFromLocalStorage(itemId);$('div[itemId="' + itemId + '"]').remove();if ($('#cart-details').html().trim() == ""){$('#cart-details-empty').show();$('#cart-checkout').hide();}});$(".cart-qty").live('change paste keyup mouseup', function() {var itemId = $(this).attr('data');var maxQty = $(this).attr('max');var qty = $(this).val();if (!qty){qty = 0;}if(parseInt(qty) < 0){alert("Invalid quantity");$(this).val(0);qty = 0;}if (parseInt(qty) > parseInt(maxQty)){alert("You don't have availability of "+qty);$(this).val(maxQty);qty = maxQty;}changeQuantityInLocalStorage(itemId, qty);});});function addItemInLocalStorage(bagObj){if (localStorage.getItem("bag")!=null){var bag = JSON.parse(localStorage.getItem("bag"));bag[bagObj.itemId] = bagObjlocalStorage.setItem("bag",JSON.stringify(bag));bag = localStorage.getItem("bag")$("#cart_bar").find('span').text(Object.keys(JSON.parse(bag)).length);}else{var tempObj = {};tempObj[bagObj.itemId] = bagObjlocalStorage.setItem("bag",JSON.stringify(tempObj));var bag = localStorage.getItem("bag")$("#cart_bar").find('span').text(Object.keys(JSON.parse(bag)).length);}}function changeQuantityInLocalStorage(itemId, newQuantity){var bag = JSON.parse(localStorage.getItem("bag"));bag[itemId].quantity = newQuantity;localStorage.setItem("bag",JSON.stringify(bag));}function removeItemFromLocalStorage(itemId){if (localStorage.getItem("bag")!=null){var bag = JSON.parse(localStorage.getItem("bag"));delete bag[itemId];localStorage.setItem("bag",JSON.stringify(bag));$("#cart_bar").find('span').text(Object.keys(bag).length);}}function emptyBag(){localStorage.setItem("bag",JSON.stringify({}));$("#cart_bar").find('span').text(0);}function loadCart(domId){var params = {"cartData":localStorage.getItem("bag")}doAjaxRequestWithParamsHandler(context+"/cart", "POST", params, function(response){$('#' + domId).html(response);});}function checkout(domId){var params = {"cartData":localStorage.getItem("bag")}doAjaxRequestWithParamsHandler(context+"/validate-cart", "POST", params, function(response){$('#' + domId).html(response);var obj = JSON.parse(response);redirectCart(obj.redirectUrl, obj.params, obj.method, "main-content");$('#main-content').html(response);});}function redirectCart(url, cartData, method, domId){jQuery.ajax({type : method,data: {"cartData":cartData},url : context+url,success : function(response) {$('#' + domId).html(response);window.dispatchEvent(new Event('resize'));}});}