Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
538 rajveer 1
/* 
2
     Example:
3
     addResearch(refdivid,reqtype) refdivid=pane1, reqtype=single/multi
4
     Multiple request: onclick="javascript:addResearch('pane2','multi');"
5
     Single request: onclick="javascript:addResearch('','single');"
6
 
7
     addToCart(refdivid,reqtype) refdivid=pane1, reqtype=single/multi
8
     Multiple request: onclick="javascript:addToCart('pane2','multi');"
9
     Single request: onclick="javascript:addToCart('','single');"
10
 
11
     NOTE: incase reqtype=list then refdivid should be product id
12
*/
1922 varun.gupt 13
 
1829 varun.gupt 14
function trackEventWithGA(eventCategory, actionName, label)	{
2038 vikas 15
	if(typeof _gaq != "undefined" && _gaq != null)	{
16
		_gaq.push(['_trackEvent', eventCategory, actionName, label, 2]);
17
	}
1829 varun.gupt 18
}
2110 vikas 19
 
20
function trackPageWithGA(page)	{
21
	if(typeof _gaq != "undefined" && _gaq != null)	{
22
		_gaq.push(['_trackPageview', page]);
23
	}
24
}
1922 varun.gupt 25
 
637 rajveer 26
$(function() {
1199 vikas 27
	$("a.addtocart").live('click', function() {
637 rajveer 28
		var catalogid = $(this).attr('catalogid');
1795 varun.gupt 29
 
762 rajveer 30
		var radBtn = "";
31
		var param = "PARAMETERS_" + catalogid;
32
 
33
		$.each(eval(param), function(val, text) {
34
			radBtn += '<label><input type="radio" name="radColorSel" value="' + val + '" /> <span>' + text + '</span></label>';
35
		});
36
 
37
		radBtn += '<div class="clearBoth"></div>';
38
		$(".colorSelLightBoxColor .content").html(radBtn);
637 rajveer 39
 
1189 varun.gupt 40
		$.fn.colorbox({inline:true, href:".colorSelLightBoxColor", open:true, onComplete:function(){
41
			var posLeft = (document.documentElement.clientWidth / 2) - (parseInt($('#colorbox').css('width')) / 2);
42
			var posTop = (document.documentElement.clientHeight / 2) - (parseInt($('#colorbox').css('height')) / 2);
43
 
44
			$('#colorbox').css('top', posTop);
45
			$('#colorbox').css('left', posLeft);
46
		}});
637 rajveer 47
	});
762 rajveer 48
 
637 rajveer 49
});
50
 
2755 rajveer 51
 
52
 
53
function addToCart(refdivid,reqtype){
54
     var seldata="";
55
     var tot=0;
56
     var saprt="";
57
     if(reqtype == "multi"){
58
          var containerdiv = "#" + refdivid;
59
          var par= containerdiv + " input[type=checkbox]:checked";
60
          var isMulti = false;
61
          $(par).each(function(){
62
 
63
	       	   var totalcolors = $(this).attr('totalcolors');
64
	           saprt = (tot>0)? "_":"";
65
               seldata += saprt+$(this).attr('itemid');
66
 
67
	           if(totalcolors != 1)	{
68
	        	   isMulti = true;
69
	       	   }
70
               tot++;
71
          });
72
          if(isMulti == true){
73
        	  alert("Some items are available in multiple colors. Please go to product page and select color you want.");
74
        	  return;
75
          } else	{
76
        	  var items = seldata.split('_');
77
        	  for(var i in items)	{
78
        		  trackEventWithGA('Order', 'Add to Cart', items[i]);
79
        	  }
80
          }
81
     }else if(reqtype == "single"){
82
          seldata = $("#item_id").val();
83
		  trackEventWithGA('Order', 'Add to Cart', seldata + '');
84
          tot=1;
85
     }else if(reqtype == "list"){
86
    	  var seldata=refdivid;
87
		  trackEventWithGA('Order', 'Add to Cart', seldata + '');
88
          tot=1;
89
     }
90
 
91
     if(tot > 0)	{
92
    	 jQuery.ajax({
93
    		 type: "POST",
94
    		 url: "/addtocart",
95
    		 data: "productid=" + seldata,
96
    		 success: function(msg){
97
    			 if(msg==""){
98
    				 window.location = "/cart";
99
    			 }else{
100
    				 displayRelatedProducts(msg);
101
    			 }
102
    		 }
103
    	 });
104
     } else	{
105
    	 alert("Please select atleast one product");
106
     }
107
}
108
 
109
 
762 rajveer 110
function selectColor(){
111
	var selected = $(".colorSelLightBoxColor .content input[name='radColorSel']:checked");
112
	var itemid = selected.val();
1829 varun.gupt 113
 
114
	trackEventWithGA('Order', 'Select Product Color', itemid);
762 rajveer 115
 
1795 varun.gupt 116
	if(itemid == undefined)	{
762 rajveer 117
		alert('Please select a color.');
1795 varun.gupt 118
	} else	{
762 rajveer 119
		addToCart(itemid,'list');
120
	}
121
}
122
 
637 rajveer 123
 
2755 rajveer 124
function displayRelatedProducts(message){
125
	var radBtn = "<div id='cartRecommendationBox'>";
126
	jQuery.ajax({
127
		type: "GET",
128
		url: "/related-products/" + $("#product_id").val(),
129
		data: "productid=" + $("#product_id").val(),
130
		success: function(msg)	{
131
			radBtn += "<h3 style='margin-top:5px; margin-bottom:5px;'>" + message + "</h3>";
132
			if($.trim(msg)!=""){
133
				radBtn += "<span style='font-size:14px; color:#003300; background-color:#ffffdd;  margin-bottom:8px;'>You can check out following similar products</span><hr size=1/>";
134
			}
135
			radBtn += msg;
136
			radBtn += '<div class="clearBoth"></div></div>';
137
 
138
	    	$.colorbox({
139
	    		html:radBtn,
140
	    		width:"400px",
141
	    		height:"410px",
142
 
143
	    		onComplete: function(){
144
	    			$('#cartRecommendationBox').show().find('.widgetChkBox').hide();
145
	    		},
146
	    		onCleanup: function(){
147
	    			$('#cartRecommendationBox').hide();
148
	    		}
149
	    	});
150
		}
151
	});		
152
}
153
 
154
 
155
 
1829 varun.gupt 156
function addResearch(refdivid, reqtype){
157
     var research_tot = $("#research_total").val();
158
     var seldata = [];
159
     var tot = 0;
538 rajveer 160
 
1829 varun.gupt 161
     if(reqtype == "multi")	{
538 rajveer 162
          var containerdiv = "#" + refdivid;     
1829 varun.gupt 163
          var par = containerdiv + " input[type=checkbox]:checked";
538 rajveer 164
          $(par).each(function(){
1761 vikas 165
               seldata.unshift($(this).val());
1829 varun.gupt 166
               tot ++;
538 rajveer 167
          });
1829 varun.gupt 168
     }else if(reqtype == "single")	{
1761 vikas 169
    	  seldata.unshift($("#product_id").val());
2633 rajveer 170
          tot = 1;
1829 varun.gupt 171
     }else if(reqtype == "list"){
1761 vikas 172
    	  seldata.unshift(refdivid);
2633 rajveer 173
          tot = 1;
538 rajveer 174
     }
1795 varun.gupt 175
 
176
     if(tot > 0)	{
879 rajveer 177
          //alert("AJAX request to add products in My research. Product ID: "+seldata+" and total: "+tot);
538 rajveer 178
          jQuery.ajax({
179
               type: "POST",
1614 rajveer 180
                      url: "/addtoresearch",
1829 varun.gupt 181
                      data: "productid=[" + seldata +  "]",
1047 vikas 182
                      success: function(msg){
183
 
184
                           if(msg == 0){
185
                                alert( "Product is already in my research" );
186
                           }else {
1829 varun.gupt 187
                                var t = (research_tot * 1) + (tot * 1);
538 rajveer 188
                                $("#research_total").val(t);
189
                                if(t > 0){
190
                                     $("#research_default").css("display","none");
191
                                }     
192
                                $("#pane1").prepend(msg);
193
 
194
                                if(reqtype == "multi"){
1761 vikas 195
                                     jQuery.each(seldata,function(intIndex, objValue){
1873 varun.gupt 196
                                    	 trackEventWithGA('Research', 'Add to Research', objValue);
1761 vikas 197
                                    	  add_to_storage_set("resitems", objValue);
198
                                    	  var tblid="#pane1 #"+objValue+ " td";
2741 varun.gupt 199
                                          $(tblid + " div a.truncate").truncate({addtitle: true});
1242 vikas 200
                                          $(tblid + " div div.price").truncate({addtitle: true});
201
                                          $(tblid + " div div.text").truncate({addtitle: true});
538 rajveer 202
                                          $(tblid).animate({ backgroundColor: "#fcffb3" }, 'slow');
1242 vikas 203
                                          $(tblid).animate({ backgroundColor: "#F5F5F5" }, 'slow');
538 rajveer 204
                                     });
205
 
206
                                }else if(reqtype == "single"){
1761 vikas 207
                                	 add_to_storage_set("resitems", seldata);
1873 varun.gupt 208
                                     trackEventWithGA('Research', 'Add to Research', seldata + "");
538 rajveer 209
                                     var tblid="#pane1 #"+seldata+ " td";
1242 vikas 210
                                     $(tblid + " div a").truncate({addtitle: true});
211
                                     $(tblid + " div div.price").truncate({addtitle: true});
212
                                     $(tblid + " div div.text").truncate({addtitle: true});
538 rajveer 213
                                     $(tblid).animate({ backgroundColor: "#fcffb3" }, 'slow');
214
                                     $(tblid).animate({ backgroundColor: "#F5F5F5" }, 'slow');  
215
                                }else if(reqtype == "list"){
1873 varun.gupt 216
 
217
                                    trackEventWithGA('Research', 'Add to Research', seldata + "");
218
 
1761 vikas 219
                                	 add_to_storage_set("resitems", seldata);
538 rajveer 220
                                     var tblid="#pane1 #"+seldata+ " td";
1242 vikas 221
                                     $(tblid + " div a").truncate({addtitle: true});
222
                                     $(tblid + " div div.price").truncate({addtitle: true});
223
                                     $(tblid + " div div.text").truncate({addtitle: true});
538 rajveer 224
                                     $(tblid).animate({ backgroundColor: "#fcffb3" }, 'slow');
225
                                     $(tblid).animate({ backgroundColor: "#F5F5F5" }, 'slow');     
226
                                }    
227
                           }
228
                      }
229
          });
230
 
231
     }else{
232
          alert("Please select atleast one product");
233
     }
234
}
235
 
236
 
1873 varun.gupt 237
 
238
 
1047 vikas 239
function scrollWinToTop(){
240
    $('html, body').animate({
241
      scrollTop: $("body").offset().top
242
    }, 0);
243
}
244
 
245
function resetShipForm(){
246
  $('#shipName').val("");
247
  $('#shipAddress1').val("");
248
  $('#shipAddress2').val("");
249
  $('#shipState').val("");
250
  $('#shipCity').val("");
251
  $('#shipPin').val("");
252
  $('#shipPhone').val("");
253
	$('#newShipAdr').hide();
254
	scrollWinToTop();
255
}
256
 
257
function changeShipAddress(id){
258
  addressId = id.substring(20);
259
 //alert("TODO AJAX request to change shipping address. " + addressId);
260
   jQuery.ajax({
261
      type: "POST",
1919 rajveer 262
      url: "/shipping",
1047 vikas 263
      data: "action=change&addressid="+addressId,
264
      success: function(msg){
265
         $("#addressid").val(msg);
266
      }
267
   });
268
  document.getElementById('shipAddressContainer').innerHTML = document.getElementById(id).innerHTML;
269
	$(".proceed-bttn .yellow-image").removeClass('imgDisableButton').addClass('imgEnableButton');
270
	$(".proceed-bttn input[disabled='']").removeAttr('disabled');
2633 rajveer 271
 
272
	$('#newShipAdr').hide();
1047 vikas 273
	scrollWinToTop();
274
 
275
}
1053 vikas 276
 
1761 vikas 277
function merge_history_items(){
278
	params = $.Storage.get("histitems");
279
 
280
	jQuery.ajax({
281
		type: "POST",
282
		url: "/browse-history",
283
		data: "id="+params,
284
		cache: false,
285
		success: function(json) {
286
		    $.Storage.set("histitems", json);
287
		    load_history_widget();
288
	    }
289
	});
290
}
291
 
292
function load_research_items(){
293
	jQuery.ajax({
294
		type: "GET",
295
		url: "/myresearch",
296
		cache: false,
297
		success: function(json) {
298
		    $.Storage.set("resitems", json);
299
		    load_research_widget();
300
	    }
301
	});
302
}
303
 
1372 vikas 304
function load_research_widget(){
1761 vikas 305
	var params = "";
306
	params = "/" + $.Storage.get("resitems");
307
 
308
	jQuery.ajax({
1372 vikas 309
		type : "GET",
1761 vikas 310
		url : "/myresearch" + params,
1567 vikas 311
		cache: false,
1372 vikas 312
		success : function(html) {
1761 vikas 313
   		    $("#myresearch").html(html);
1372 vikas 314
 
1761 vikas 315
		    // Product Title
2718 varun.gupt 316
		    $("#myresearch table td div a.truncate").each(function() {
1761 vikas 317
					$(this).truncate({addtitle : true});
318
		    });
1372 vikas 319
 
1761 vikas 320
		    // Product Price
321
		    $("#myresearch table td div div.price").each(function() {
322
					$(this).truncate({addtitle : true});
323
			});
1372 vikas 324
 
1761 vikas 325
		    // Product Details
326
		    $("#myresearch table td div div.text").each(function() {
327
					$(this).truncate( {addtitle : true});
328
			});
329
	    }
1372 vikas 330
	});
331
}
332
 
1623 rajveer 333
function load_history_widget() {
1614 rajveer 334
	var params = "";
1761 vikas 335
	params = "/" + $.Storage.get("histitems");
1614 rajveer 336
 
1372 vikas 337
	jQuery.ajax({
338
		type: "GET",
1614 rajveer 339
		url: "/browse-history" + params,
1567 vikas 340
		cache: false,
1372 vikas 341
		success: function(html){
1761 vikas 342
		    $("#browsehistory").html(html);
1372 vikas 343
 
1761 vikas 344
		    // Product Title
345
		    $("#browsehistory table td div a").each(function(){
346
			    $(this).truncate({addtitle: true}); 
347
		    });
1372 vikas 348
 
1761 vikas 349
    		// Product Price
350
	    	$("#browsehistory table td div div.price").each(function(){
351
		    	$(this).truncate({addtitle: true});
352
		    });
1372 vikas 353
 
1761 vikas 354
		    // Product Details
355
		    $("#browsehistory table td div div.text").each(function(){
356
			    $(this).truncate({addtitle: true});
357
		    });
358
	    }
359
	});
360
}
361
 
362
function add_to_storage_set(key, id) {
363
	var set = eval($.Storage.get(key));
364
	if (set) {
365
		$.each(set, function(index, value) {
366
			if (value == id) {
367
				set.splice(index, 1);
368
			}
1372 vikas 369
		});
370
	}
1761 vikas 371
	set.unshift(id);
1964 vikas 372
	if (set.length>10)
373
	{
374
		set.splice(10, set.length-10);
375
	}
1761 vikas 376
	$.Storage.set(key, "[" + set.toString() + "]");
1372 vikas 377
}
378
 
1761 vikas 379
function delete_from_storage_set(key, id) {
380
	var set = eval($.Storage.get(key));
381
	if (set) {
382
		$.each(set, function(index, value) {
383
			if (value == id) {
384
				set.splice(index, 1);
385
			}
386
		});
387
	}
388
	$.Storage.set(key, "[" + set.toString() + "]");
1866 vikas 389
}
390
 
1868 vikas 391
function add_track_log(event, url, data) {
1999 vikas 392
	if ($.cookie("uafc")) {
1866 vikas 393
		jQuery.ajax( {
1919 rajveer 394
			url : "/tracking",
1866 vikas 395
			type : "POST",
396
			data : {
1868 vikas 397
				"event" : event,
1866 vikas 398
				"url" : url,
399
				"data" : data
400
			},
401
			cache : false
402
		});
403
	}
1761 vikas 404
}