| 23343 |
ashik.ali |
1 |
$(function() {
|
| 24202 |
amit.gupta |
2 |
callback = function(value) {
|
| 24203 |
amit.gupta |
3 |
removeItemFromLocalStorage(giftItemId);
|
| 24202 |
amit.gupta |
4 |
if(isNaN(value)) {
|
|
|
5 |
bootbox("No of watches should be a number. Set '0' specifically");
|
|
|
6 |
return;
|
|
|
7 |
}else {
|
|
|
8 |
loadCart("main-content", value);
|
|
|
9 |
}
|
|
|
10 |
}
|
| 23343 |
ashik.ali |
11 |
$(".cart_icon_header").live('click', function() {
|
| 25738 |
amit.gupta |
12 |
if(typeof hasGift=="undefined") {
|
|
|
13 |
hasGift = false;
|
|
|
14 |
}
|
| 24202 |
amit.gupta |
15 |
if(hasGift) {
|
|
|
16 |
bootBoxObj = {
|
|
|
17 |
size: "medium",
|
|
|
18 |
title: "Add Number of Watch as Gift",
|
|
|
19 |
callback: callback,
|
|
|
20 |
inputType:'number'
|
|
|
21 |
};
|
|
|
22 |
|
|
|
23 |
bootbox.prompt(bootBoxObj);
|
|
|
24 |
} else {
|
|
|
25 |
loadCart('main-content', 0);
|
|
|
26 |
}
|
| 23343 |
ashik.ali |
27 |
});
|
|
|
28 |
|
| 24202 |
amit.gupta |
29 |
|
| 23343 |
ashik.ali |
30 |
$(".cart-checkout").live('click', function() {
|
|
|
31 |
checkout("main-content");
|
|
|
32 |
});
|
|
|
33 |
|
| 27658 |
tejbeer |
34 |
$(".add-bag-submit").live('click', function() {
|
| 24202 |
amit.gupta |
35 |
added=false;
|
| 23405 |
amit.gupta |
36 |
$('#catalogModalBody').hide();
|
| 27658 |
tejbeer |
37 |
var itemId = $(this).closest('tr').attr('data');
|
| 23343 |
ashik.ali |
38 |
$("#bagModel .itemId").val(itemId);
|
|
|
39 |
$("#bagModel .quantity").val(0);
|
| 23500 |
ashik.ali |
40 |
doGetAjaxRequestHandler(context+"/checkItemAvailability/?itemId="+itemId, function(response){
|
| 23347 |
ashik.ali |
41 |
var obj = JSON.parse(response);
|
|
|
42 |
console.log(obj);
|
|
|
43 |
console.log(obj.displayName);
|
|
|
44 |
$(".modal-body h4.bagModalProductInfo.modelHeaderCustom > span").text(obj.displayName);
|
|
|
45 |
$(".modal-body h4.bagModalAvailability.modelHeaderCustom > span").text(obj.availability);
|
| 23405 |
amit.gupta |
46 |
inputEle = [];
|
|
|
47 |
if("earlyImeis" in obj) {
|
|
|
48 |
for(i in obj.earlyImeis) {
|
|
|
49 |
inputEle.push('<span class="input-group-addon">');
|
|
|
50 |
inputEle.push('<input type="checkbox" aria-label="..." name="interest" value="' + obj.earlyImeis[i] + '" id="' + obj.earlyImeis[i] + '"/>');
|
|
|
51 |
inputEle.push('<label for="' + obj.earlyImeis[i] + '">' + obj.earlyImeis[i] + '</label>');
|
|
|
52 |
inputEle.push('</span>');
|
| 23967 |
amit.gupta |
53 |
if(i%3==2){
|
|
|
54 |
inputEle.push('</br>');
|
|
|
55 |
}
|
| 24440 |
amit.gupta |
56 |
$(".modal-body h4.bagModalEarlyImeis.modelHeaderCustom > span").html(inputEle.join(''));
|
| 23405 |
amit.gupta |
57 |
}
|
| 24440 |
amit.gupta |
58 |
$(".modal-body h4.bagModalEarlyImeis.modelHeaderCustom").show();
|
|
|
59 |
$(".modal-body h4.bagModalQuantity.modelHeaderCustom").hide();
|
| 23405 |
amit.gupta |
60 |
} else {
|
| 24440 |
amit.gupta |
61 |
$(".modal-body h4.bagModalEarlyImeis.modelHeaderCustom").html("");
|
|
|
62 |
$(".modal-body h4.bagModalEarlyImeis.modelHeaderCustom").hide();
|
|
|
63 |
$(".modal-body h4.bagModalQuantity.modelHeaderCustom").show();
|
| 23405 |
amit.gupta |
64 |
|
|
|
65 |
}
|
| 23347 |
ashik.ali |
66 |
$("#bagModel .availability").val(obj.availability);
|
| 23405 |
amit.gupta |
67 |
$('#catalogModalBody').show();
|
| 23347 |
ashik.ali |
68 |
});
|
|
|
69 |
|
| 24202 |
amit.gupta |
70 |
|
| 23343 |
ashik.ali |
71 |
});
|
|
|
72 |
|
| 24202 |
amit.gupta |
73 |
// addToBagButton
|
| 23343 |
ashik.ali |
74 |
|
|
|
75 |
$("#addToBagButton").live('click', function() {
|
|
|
76 |
var itemId = $("#bagModel .itemId").val();
|
|
|
77 |
var tempAvailability = $("#bagModel .availability").val();
|
|
|
78 |
var quantity = $("#bagModel .quantity").val();
|
| 24440 |
amit.gupta |
79 |
imeiCount = $('h4.bagModalEarlyImeis').find('input').length;
|
| 23405 |
amit.gupta |
80 |
if(imeiCount > 0) {
|
| 24440 |
amit.gupta |
81 |
quantity = $('h4.bagModalEarlyImeis').find('input:checked').length;
|
| 23405 |
amit.gupta |
82 |
if(quantity == 0) {
|
|
|
83 |
alert("Please check one of the imei(s)");
|
|
|
84 |
return;
|
|
|
85 |
}
|
|
|
86 |
} else if (!quantity || parseInt(quantity) <= 0 || isNaN(parseInt(quantity)) || quantity.indexOf('.') != -1){
|
| 23343 |
ashik.ali |
87 |
alert("Please enter valid quantity");
|
|
|
88 |
return;
|
|
|
89 |
}
|
|
|
90 |
|
| 23500 |
ashik.ali |
91 |
doGetAjaxRequestHandler(context+"/checkItemAvailability/?itemId="+itemId, function(response){
|
|
|
92 |
var obj = JSON.parse(response);
|
|
|
93 |
console.log(obj);
|
|
|
94 |
if (obj.availability < parseInt(quantity) || obj.availability == 0){
|
|
|
95 |
alert("You don't have enough inventory of this item");
|
|
|
96 |
return;
|
|
|
97 |
}
|
|
|
98 |
var obj = {'itemId':obj.itemId,'displayName':obj.displayName,'quantity':parseInt(quantity),'iconUrl':obj.iconUrl};
|
|
|
99 |
if(imeiCount > 0) {
|
|
|
100 |
obj['imeis'] = [];
|
| 24440 |
amit.gupta |
101 |
$('h4.bagModalEarlyImeis').find('input:checked').each(function(index, ele){
|
| 23500 |
ashik.ali |
102 |
obj['imeis'].push(ele.value);
|
|
|
103 |
});
|
|
|
104 |
}
|
|
|
105 |
console.log(obj);
|
|
|
106 |
addItemInLocalStorage(obj);
|
|
|
107 |
alert("Item added to bag successfully");
|
|
|
108 |
$('#bagModel').modal('hide');
|
|
|
109 |
|
|
|
110 |
});
|
|
|
111 |
|
| 23343 |
ashik.ali |
112 |
});
|
|
|
113 |
|
|
|
114 |
$(".cart-trash").live('click',function(){
|
|
|
115 |
var itemId = $(this).attr('data');
|
|
|
116 |
removeItemFromLocalStorage(itemId);
|
|
|
117 |
$('div[itemId="' + itemId + '"]').remove();
|
|
|
118 |
if ($('#cart-details').html().trim() == ""){
|
|
|
119 |
$('#cart-details-empty').show();
|
|
|
120 |
$('#cart-checkout').hide();
|
|
|
121 |
}
|
|
|
122 |
});
|
|
|
123 |
|
| 26263 |
amit.gupta |
124 |
|
|
|
125 |
$(".bill-now").live('click',function(){
|
|
|
126 |
emptyBag();
|
|
|
127 |
|
|
|
128 |
var itemId = $(this).data('itemid');
|
|
|
129 |
var imei = $(this).data('imei');
|
|
|
130 |
var bagObj = {itemId:itemId,displayName:"", quantity:1, imeis:[imei]}
|
|
|
131 |
addItemInLocalStorage(bagObj);
|
|
|
132 |
checkout('main-content');
|
|
|
133 |
});
|
|
|
134 |
|
| 24457 |
amit.gupta |
135 |
$(".cart-qty").live('change', function() {
|
| 23343 |
ashik.ali |
136 |
var itemId = $(this).attr('data');
|
|
|
137 |
var maxQty = $(this).attr('max');
|
|
|
138 |
var qty = $(this).val();
|
|
|
139 |
if (!qty){
|
|
|
140 |
qty = 0;
|
|
|
141 |
}
|
|
|
142 |
if(parseInt(qty) < 0){
|
|
|
143 |
alert("Invalid quantity");
|
|
|
144 |
$(this).val(0);
|
|
|
145 |
qty = 0;
|
|
|
146 |
}
|
|
|
147 |
if (parseInt(qty) > parseInt(maxQty)){
|
|
|
148 |
alert("You don't have availability of "+qty);
|
|
|
149 |
$(this).val(maxQty);
|
|
|
150 |
qty = maxQty;
|
|
|
151 |
}
|
|
|
152 |
changeQuantityInLocalStorage(itemId, qty);
|
|
|
153 |
});
|
|
|
154 |
});
|
|
|
155 |
|
|
|
156 |
|
| 26263 |
amit.gupta |
157 |
function emptyBag() {
|
|
|
158 |
delete localStorage.getItem("bag");
|
|
|
159 |
}
|
| 23343 |
ashik.ali |
160 |
|
|
|
161 |
function addItemInLocalStorage(bagObj){
|
|
|
162 |
if (localStorage.getItem("bag")!=null){
|
|
|
163 |
var bag = JSON.parse(localStorage.getItem("bag"));
|
|
|
164 |
bag[bagObj.itemId] = bagObj
|
|
|
165 |
localStorage.setItem("bag",JSON.stringify(bag));
|
|
|
166 |
bag = localStorage.getItem("bag")
|
|
|
167 |
$("#cart_bar").find('span').text(Object.keys(JSON.parse(bag)).length);
|
|
|
168 |
}
|
|
|
169 |
else{
|
|
|
170 |
var tempObj = {};
|
|
|
171 |
tempObj[bagObj.itemId] = bagObj
|
|
|
172 |
localStorage.setItem("bag",JSON.stringify(tempObj));
|
|
|
173 |
var bag = localStorage.getItem("bag")
|
|
|
174 |
$("#cart_bar").find('span').text(Object.keys(JSON.parse(bag)).length);
|
|
|
175 |
}
|
|
|
176 |
}
|
|
|
177 |
|
|
|
178 |
|
|
|
179 |
function changeQuantityInLocalStorage(itemId, newQuantity){
|
|
|
180 |
var bag = JSON.parse(localStorage.getItem("bag"));
|
| 24202 |
amit.gupta |
181 |
if (typeof bag[itemId]=="undefined") {
|
|
|
182 |
bag[itemId] = {};
|
|
|
183 |
bag[itemId].itemId=itemId;
|
|
|
184 |
bag[itemId].displayName = "SmartDukaan Gift Watch";
|
| 24203 |
amit.gupta |
185 |
bag[itemId].iconUrl = "";
|
|
|
186 |
delete bag["giftQty"];
|
| 24202 |
amit.gupta |
187 |
|
|
|
188 |
}
|
| 23343 |
ashik.ali |
189 |
bag[itemId].quantity = newQuantity;
|
|
|
190 |
localStorage.setItem("bag",JSON.stringify(bag));
|
|
|
191 |
}
|
|
|
192 |
|
|
|
193 |
function removeItemFromLocalStorage(itemId){
|
|
|
194 |
if (localStorage.getItem("bag")!=null){
|
|
|
195 |
var bag = JSON.parse(localStorage.getItem("bag"));
|
|
|
196 |
delete bag[itemId];
|
|
|
197 |
localStorage.setItem("bag",JSON.stringify(bag));
|
|
|
198 |
$("#cart_bar").find('span').text(Object.keys(bag).length);
|
|
|
199 |
}
|
|
|
200 |
}
|
|
|
201 |
|
| 24202 |
amit.gupta |
202 |
function addGiftQty(giftQty) {
|
|
|
203 |
if (localStorage.getItem("bag")!=null){
|
|
|
204 |
var bag = JSON.parse(localStorage.getItem("bag"));
|
|
|
205 |
bag["giftQty"] = giftQty;
|
|
|
206 |
localStorage.setItem("bag",JSON.stringify(bag));
|
|
|
207 |
}
|
|
|
208 |
}
|
| 24207 |
amit.gupta |
209 |
function removeGiftQty() {
|
|
|
210 |
if (localStorage.getItem("bag")!=null){
|
|
|
211 |
var bag = JSON.parse(localStorage.getItem("bag"));
|
|
|
212 |
delete bag["giftQty"];
|
|
|
213 |
localStorage.setItem("bag",JSON.stringify(bag));
|
|
|
214 |
}
|
|
|
215 |
}
|
| 24202 |
amit.gupta |
216 |
|
| 24440 |
amit.gupta |
217 |
function saveBag(bagObj) {
|
|
|
218 |
localStorage.setItem("bag", JSON.stringify(bagObj));
|
|
|
219 |
}
|
|
|
220 |
|
| 23343 |
ashik.ali |
221 |
function emptyBag(){
|
|
|
222 |
localStorage.setItem("bag",JSON.stringify({}));
|
|
|
223 |
$("#cart_bar").find('span').text(0);
|
|
|
224 |
}
|
|
|
225 |
|
| 24202 |
amit.gupta |
226 |
function loadCart(domId, giftQty){
|
|
|
227 |
addGiftQty(giftQty);
|
| 23343 |
ashik.ali |
228 |
var params = {
|
|
|
229 |
"cartData":localStorage.getItem("bag")
|
|
|
230 |
}
|
| 23500 |
ashik.ali |
231 |
doPostAjaxRequestWithParamsHandler(context+"/cart", params, function(response){
|
| 23343 |
ashik.ali |
232 |
$('#' + domId).html(response);
|
| 24207 |
amit.gupta |
233 |
removeGiftQty();
|
| 23343 |
ashik.ali |
234 |
});
|
|
|
235 |
}
|
|
|
236 |
|
|
|
237 |
function checkout(domId){
|
|
|
238 |
var params = {
|
|
|
239 |
"cartData":localStorage.getItem("bag")
|
|
|
240 |
}
|
| 23500 |
ashik.ali |
241 |
doPostAjaxRequestWithParamsHandler(context+"/validate-cart", params, function(response){
|
| 23343 |
ashik.ali |
242 |
$('#' + domId).html(response);
|
|
|
243 |
var obj = JSON.parse(response);
|
| 23500 |
ashik.ali |
244 |
redirectCart(obj.redirectUrl, obj.params, "main-content");
|
| 23343 |
ashik.ali |
245 |
$('#main-content').html(response);
|
|
|
246 |
});
|
|
|
247 |
}
|
|
|
248 |
|
| 26817 |
amit.gupta |
249 |
//On checkout we are also setting imeis why?
|
| 23500 |
ashik.ali |
250 |
function redirectCart(url, cartData, domId){
|
|
|
251 |
var params = {
|
|
|
252 |
"cartData":cartData
|
|
|
253 |
}
|
|
|
254 |
doPostAjaxRequestWithParamsHandler(context + url, params, function(response){
|
|
|
255 |
$('#' + domId).html(response);
|
|
|
256 |
cartData = JSON.parse(cartData);
|
|
|
257 |
for(itemId in cartData) {
|
|
|
258 |
if('imeis' in cartData[itemId]){
|
|
|
259 |
$('#order-details').find('input[name="serialNumber"][itemId="' + itemId + '"]').each(function(i,e){
|
| 24440 |
amit.gupta |
260 |
if($(e).attr("itemtype")=="SERIALIZED") {
|
|
|
261 |
e.value = cartData[itemId].imeis[i];
|
|
|
262 |
} else {
|
|
|
263 |
cartData[itemId].imeis=[];
|
|
|
264 |
|
|
|
265 |
}
|
| 23500 |
ashik.ali |
266 |
});
|
|
|
267 |
}
|
| 23343 |
ashik.ali |
268 |
}
|
| 24440 |
amit.gupta |
269 |
saveBag(cartData);
|
| 23500 |
ashik.ali |
270 |
window.dispatchEvent(new Event('resize'));
|
|
|
271 |
});
|
| 23343 |
ashik.ali |
272 |
}
|