Rev 24202 | Rev 24207 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
$(function() {callback = function(value) {removeItemFromLocalStorage(giftItemId);if(isNaN(value)) {bootbox("No of watches should be a number. Set '0' specifically");return;}else {loadCart("main-content", value);}}$(".cart_icon_header").live('click', function() {if(hasGift) {bootBoxObj = {size: "medium",title: "Add Number of Watch as Gift",callback: callback,inputType:'number'};bootbox.prompt(bootBoxObj);} else {loadCart('main-content', 0);}});$(".cart-checkout").live('click', function() {checkout("main-content");});$(".add-to-bag").live('click', function() {added=false;$('#catalogModalBody').hide();var itemId = $(this).attr('data');$("#bagModel .itemId").val(itemId);$("#bagModel .quantity").val(0);doGetAjaxRequestHandler(context+"/checkItemAvailability/?itemId="+itemId, function(response){var obj = JSON.parse(response);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);inputEle = [];if("earlyImeis" in obj) {for(i in obj.earlyImeis) {inputEle.push('<span class="input-group-addon">');inputEle.push('<input type="checkbox" aria-label="..." name="interest" value="' + obj.earlyImeis[i] + '" id="' + obj.earlyImeis[i] + '"/>');inputEle.push('<label for="' + obj.earlyImeis[i] + '">' + obj.earlyImeis[i] + '</label>');inputEle.push('</span>');if(i%3==2){inputEle.push('</br>');}$(".modal-body h4.bagMaodalEarlyImeis.modelHeaderCustom > span").html(inputEle.join(''));}$(".modal-body h4.bagMaodalEarlyImeis.modelHeaderCustom").show();$(".modal-body h4.bagMaodalQuantity.modelHeaderCustom").hide();} else {$(".modal-body h4.bagMaodalEarlyImeis.modelHeaderCustom").hide();$(".modal-body h4.bagMaodalQuantity.modelHeaderCustom").show();}$("#bagModel .availability").val(obj.availability);$('#catalogModalBody').show();});});// addToBagButton$("#addToBagButton").live('click', function() {var itemId = $("#bagModel .itemId").val();var tempAvailability = $("#bagModel .availability").val();var quantity = $("#bagModel .quantity").val();imeiCount = $('h4.bagMaodalEarlyImeis').find('input').length;if(imeiCount > 0) {quantity = $('h4.bagMaodalEarlyImeis').find('input:checked').length;if(quantity == 0) {alert("Please check one of the imei(s)");return;}} else if (!quantity || parseInt(quantity) <= 0 || isNaN(parseInt(quantity)) || quantity.indexOf('.') != -1){alert("Please enter valid quantity");return;}doGetAjaxRequestHandler(context+"/checkItemAvailability/?itemId="+itemId, function(response){var obj = JSON.parse(response);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};if(imeiCount > 0) {obj['imeis'] = [];$('h4.bagMaodalEarlyImeis').find('input:checked').each(function(index, ele){obj['imeis'].push(ele.value);});}console.log(obj);addItemInLocalStorage(obj);alert("Item added to bag successfully");$('#bagModel').modal('hide');});});$(".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"));if (typeof bag[itemId]=="undefined") {bag[itemId] = {};bag[itemId].itemId=itemId;bag[itemId].displayName = "SmartDukaan Gift Watch";bag[itemId].iconUrl = "";delete bag["giftQty"];}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 addGiftQty(giftQty) {if (localStorage.getItem("bag")!=null){var bag = JSON.parse(localStorage.getItem("bag"));bag["giftQty"] = giftQty;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, giftQty){addGiftQty(giftQty);var params = {"cartData":localStorage.getItem("bag")}doPostAjaxRequestWithParamsHandler(context+"/cart", params, function(response){$('#' + domId).html(response);});}function checkout(domId){var params = {"cartData":localStorage.getItem("bag")}doPostAjaxRequestWithParamsHandler(context+"/validate-cart", params, function(response){$('#' + domId).html(response);var obj = JSON.parse(response);redirectCart(obj.redirectUrl, obj.params, "main-content");$('#main-content').html(response);});}function redirectCart(url, cartData, domId){var params = {"cartData":cartData}doPostAjaxRequestWithParamsHandler(context + url, params, function(response){$('#' + domId).html(response);cartData = JSON.parse(cartData);for(itemId in cartData) {if('imeis' in cartData[itemId]){$('#order-details').find('input[name="serialNumber"][itemId="' + itemId + '"]').each(function(i,e){e.value = cartData[itemId].imeis[i];});}}window.dispatchEvent(new Event('resize'));});}