Subversion Repositories SmartDukaan

Rev

Rev 17830 | Rev 17833 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
17804 manish.sha 1
function loadCartPageDetails(){
2
	$('.itemquantity').attr('disabled', 'true');
17832 manish.sha 3
	var payable = $('div.cartgrandtotal span.pull-right').text().split(" ");
4
	payable = payable[2];
5
	alert(payable);
6
	if(parseInt(payable)>0){
7
		$('button.checkoutbtn').prop( "disabled", false );
8
	}else{
9
		$('button.checkoutbtn').prop( "disabled", true );
10
	}
11
 
17804 manish.sha 12
	var cart_details = localStorage.getItem('cart_details');
13
 
14
	localStorage.removeItem('cart_details');
15
	var totalCartValue = 0;
16
	var totalCartQuantity = 0;
17
	var cartItems = {};
18
	var jsonObjToBeStored = {};
19
	var shippingCharges = 0;
20
 
21
	totalCartValue = $('.cartitemstotal').data('itemtotal');
22
	shippingCharges = $('.cartitemstotal').data('shipping');
23
 
24
	$('.number-spinner').each(function (index, val) {
25
		var element = $(val);
26
		var quantity = element.find("input").val();
27
		if(parseInt(quantity)>0){
28
			var sku = element.find("button[data-dir='up']").data('id');
29
			var price = element.find("button[data-dir='up']").data('price');
30
 
31
			var prodname = $(this).data('name');
32
		    var brandname = $(this).data('brand');
33
			var itemDetail = {};
34
			totalCartQuantity = totalCartQuantity + parseInt(quantity);
35
			itemDetail['quantity']=parseInt(quantity);
36
			itemDetail['unitprice']=parseInt(price);
37
			itemDetail['productname']=prodname;
38
			itemDetail['brand']=brandname;
39
			cartItems[sku.toString()]=itemDetail;
40
		}
41
	});
42
 
43
	jsonObjToBeStored['totalCartQuantity'] = totalCartQuantity;
44
	jsonObjToBeStored['totalCartValue'] = totalCartValue;
45
	jsonObjToBeStored['cartItems'] = cartItems;
46
	jsonObjToBeStored['shippingCharges'] = shippingCharges;
47
	localStorage.setItem('cart_details',JSON.stringify(jsonObjToBeStored));
48
}
49
 
50
$(function(){
51
	loadCartPageDetails();
52
});
53
 
54
$(document).on('click','.number-spinner button',function(){
55
	btn = $(this);
56
    input = btn.closest('.number-spinner').find('input');
57
    oldValue = btn.closest('.number-spinner').find('input').val().trim(),
58
	newVal = 0;
59
    btn.closest('.number-spinner').find('button').prop("disabled", false);
60
    var totalCartQuantity = 0;
61
    var totalCartValue = 0;
62
    var shippingCharges;
63
    var cartDetailsObj; 
64
    var jsonObjToBeStored = {};
65
    var cartItems = {};
66
    var cart_details = localStorage.getItem('cart_details');
67
    if(cart_details!=undefined){
68
    	cartDetailsObj = JSON.parse(cart_details);
69
    	totalCartQuantity = cartDetailsObj.totalCartQuantity;
70
    	totalCartValue = cartDetailsObj.totalCartValue;
71
    	cartItems = cartDetailsObj.cartItems;
72
    }
73
    var inc = 0;
74
    var dec = 0;
75
    var sku = btn.data('id');
76
    var unitPrice = btn.data('price');
77
    var prodname = $(".number-spinner").data('name');
78
    var brandname = $(".number-spinner").data('brand');
79
    if (btn.attr('data-dir') == 'up') {
80
		if ( input.attr('max') == undefined || parseInt(input.val()) < parseInt(input.attr('max')) ) {
81
			if(parseInt(input.val())<5){
82
				inc = 1;
83
				newVal = parseInt(oldValue) + inc;
84
			}else{
85
				inc = 5-(parseInt(input.val())%5);
86
				newVal = parseInt(oldValue) + inc;
87
				if(newVal>parseInt(input.attr('max'))){
88
					inc = parseInt(input.attr('max')) - parseInt(oldValue);
89
					newVal = parseInt(oldValue) + inc;
90
				}
91
			}
92
		}else{
93
			newVal = parseInt(oldValue);
94
			btn.prop("disabled", true);
95
		}
96
		totalCartQuantity = totalCartQuantity + inc;
97
	} else {
98
		if ( input.attr('min') == undefined || parseInt(input.val()) > parseInt(input.attr('min')) ) {
99
		    dec = 1;
100
			newVal = parseInt(oldValue) - dec;
101
		}else{
102
			btn.prop("disabled", true);
103
		}
104
		totalCartQuantity = totalCartQuantity - dec;
105
	}
106
 
107
	btn.closest('.number-spinner').find('input').val(newVal);
108
	if(cartDetailsObj==undefined){
109
		jsonObjToBeStored['totalCartQuantity'] = totalCartQuantity;
110
		totalCartValue = totalCartValue + (unitPrice * newVal);
111
		jsonObjToBeStored['totalCartValue'] = totalCartValue;
112
		var itemDetail = {};
113
		itemDetail['quantity']=newVal;
114
		itemDetail['unitprice']=unitPrice;
115
		itemDetail['productname']=prodname;
116
		itemDetail['brand']=brandname;
117
		cartItems[sku.toString()]=itemDetail;
118
		jsonObjToBeStored['cartItems']=cartItems;
119
		if(parseInt(totalCartValue)>1000){
120
			shippingCharges = 0;
121
		}else if(parseInt(totalCartValue)>=500 && parseInt(totalCartValue)<500){
122
			shippingCharges = 50;
123
		}else{
124
			shippingCharges = 100;
125
		}
17832 manish.sha 126
		jsonObjToBeStored['shippingCharges'] = shippingCharges;
17804 manish.sha 127
		localStorage.setItem('cart_details',JSON.stringify(jsonObjToBeStored));
128
	}else{
129
		cartDetailsObj.totalCartQuantity = totalCartQuantity;
130
		var itemDetail = cartItems[sku.toString()];
131
		if(itemDetail==undefined){
132
			var itemDetail = {};
133
			itemDetail['quantity']=newVal;
134
			itemDetail['unitprice']=unitPrice;
135
			itemDetail['productname']=prodname;
136
			itemDetail['brand']=brandname;
137
			totalCartValue = totalCartValue + (unitPrice * newVal);
138
			cartItems[sku.toString()]=itemDetail;
139
		}else{
140
			totalCartValue = totalCartValue - (cartItems[sku.toString()].quantity * cartItems[sku.toString()].unitprice) + (unitPrice * newVal);
141
			if(newVal==0){
17832 manish.sha 142
				cartItems[sku.toString()].quantity = 0;
143
				cartItems[sku.toString()].unitprice = unitPrice;
17804 manish.sha 144
			}else{
145
				cartItems[sku.toString()].quantity = newVal;
146
				cartItems[sku.toString()].unitprice = unitPrice;
147
			}
148
 
149
		}
150
		cartDetailsObj.totalCartValue = totalCartValue;
151
		cartDetailsObj.cartItems = cartItems;
152
		if(parseInt(totalCartValue)>1000){
153
			shippingCharges = 0;
154
		}else if(parseInt(totalCartValue)>=500 && parseInt(totalCartValue)<500){
155
			shippingCharges = 50;
156
		}else{
157
			shippingCharges = 100;
158
		}
159
		cartDetailsObj.shippingCharges = shippingCharges;
160
		localStorage.setItem('cart_details',JSON.stringify(cartDetailsObj));
161
	}
17832 manish.sha 162
	$('div.cartitemstotal span.itemstotal').text('₹ '+numberWithCommas(totalCartValue));
163
	$('div.cartitemstotal span.shippingval').text('₹ '+numberWithCommas(shippingCharges));
17828 manish.sha 164
	var payable = 0;
17804 manish.sha 165
	if(shippingCharges>0){
17828 manish.sha 166
		if(totalCartValue>0){
167
			$('.cartitemstotal').removeClass('hidden');
168
			payable = parseInt(shippingCharges)+parseInt(totalCartValue);
17832 manish.sha 169
		}else{
170
			payable = 0;
17828 manish.sha 171
		}
17820 manish.sha 172
	}else{
17828 manish.sha 173
			payable = parseInt(totalCartValue);
174
			$('.cartitemstotal').addClass('hidden');
17804 manish.sha 175
	}
17832 manish.sha 176
	$('div.cartgrandtotal span.pull-right').text('₹ '+numberWithCommas(payable));
177
 
178
	if(payable>0){
179
		$('button.checkoutbtn').prop( "disabled", false );
180
	}else{
181
		$('button.checkoutbtn').prop( "disabled", true );
182
	}
17804 manish.sha 183
});
184
 
185
function numberWithCommas(x) {
186
    return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
187
}
188
 
189
$(document).on('click','.changepincode',function(){
190
	var pincode = $('.pincodeval').val();
191
	var url = apihost + 'cartdetails/?user_id='+me;
192
    var newForm = $('<form>', {
193
        'action': url,
194
        'method':'post'
195
    }).append($('<input>', {
196
        'name': 'cart_details',
197
        'value': localStorage.getItem('cart_details'),
198
        'type': 'hidden'
199
    })).append($('<input>', {
200
        'name': 'pincode',
201
        'value': pincode,
202
        'type': 'hidden'
203
    }));
204
    newForm.submit();
205
});
206
 
207
$(document).on('click','.checkoutbtn',function(){
208
	var url = apihost + 'shippings/';
209
    var newForm = $('<form>', {
210
        'action': url,
211
        'method':'post'
212
    }).append($('<input>', {
213
        'name': 'cart_details',
214
        'value': localStorage.getItem('cart_details'),
215
        'type': 'hidden'
216
    }));
217
    newForm.submit();
17822 manish.sha 218
});
219
$(document).on('click','.backtodeals',function(){
220
	history.back();
17804 manish.sha 221
});