Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
538 rajveer 1
 
2
 
3
$(document).ready(function(){
4
 
5
	tempLogEmail = ""; 	// Store email id of login page for reg user via shop2020 and via facebook
6
	emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
7
 
8
	blnFieldChanged 	= false;
9
	blnCancelClicked 	= false;
10
 
11
	/**
12
		Sort Open & Completed orders field "Ordered On" by descending order
13
	*/
14
	/*
15
	if($("#orderData").length){
16
		$("#orderData").tablesorter( {sortList: [[1,1]]} );
17
	}
18
	*/
19
	/**
20
		Personal Details page 
21
	*/
22
	if($("#personalDetails").length){
23
 
24
		arrPersonalDetail = new Array(7); // Store Personal Detail page field change status and initial data
25
 
26
		/*
27
		perName		 = "Tanuj Shah";
28
		perMonth 	 = "June";
29
		perDay 		 = "4";
30
		perYear 	 = "1984";
31
		perSex 		 = "male";
32
		perCommEmail = "tanuj@tanujshah.com";
33
		perSubscribe = true;
34
		*/
35
		// Personal Details page field name 
36
		frmPersonal  	  = "#frmPersonalDetails";
37
		perFieldName 	  = frmPersonal + " #txtName";
568 rajveer 38
		perFieldDateOfBirth	  = frmPersonal + " #txtDateOfBirth";
538 rajveer 39
		perFieldSex		  = frmPersonal + " input[name='sex']";
40
		perFieldCommEmail = frmPersonal + " #txtCommEmail";
41
		perFieldSubscribe = frmPersonal + " input[name='subscribe']";
595 rajveer 42
		perFieldPhone 	  = frmPersonal + " #txtPhone";
538 rajveer 43
 
44
		personalDetailSetup();
45
	}
46
 
47
	/**
48
		Login Detail page for reg user via shop2020 
49
	*/
50
	if($("#registeredUserShop2020:visible").length > 0){			
51
		/*
52
		logRegEmail = "tanuj@tanujshah.com";
53
		*/
54
		// Login Details page Registered User field name
55
		frmLogReg 		= "#frmRegisUser";
56
		regFieldEmail	= frmLogReg + " #txtLoginID";
57
		regFieldOldPass	= frmLogReg + " #txtOldPassword";
58
		regFieldNewPass	= frmLogReg + " #txtNewPassword";
59
		regFieldConPass	= frmLogReg + " #txtConfirmPassword";
60
 
61
		registeredUserSetup();
62
	}
63
 
64
	/**
65
		Login Detail page for reg user via facebook 
66
	*/
67
	if($("#registeredUserFacebook:visible").length > 0){
68
		/*
69
		logRegFBEmail = "tanuj@tanujshah.com";
70
		*/
71
 
72
		// Login Details page Registered User via Facebook field name
73
		frmLogRegFB  		= "#frmFacebookUser";
74
		regFieldFBEmail 	= frmLogRegFB + " #txtFacebookLogin";
75
		regFieldFBPass		= frmLogRegFB + " #txtPassword";
76
 
77
		registeredUserFBSetup();
78
	}
79
 
80
	/**
81
		Shipping Address page 
82
	*/
83
	if($("#shippingAddress").length){
84
 
85
		arrOtherAddID 	= new Array();	// 1D Array
86
		arrBackupAdd	= new Array();	// 1D Array
87
 
88
		shippingAddressSetup();
89
	}
90
 
91
});
92
 
93
/**
94
	Primary Address output for Shipping Address page
95
*/
96
function printPriAddress(str){
97
 
98
	if(str == "default"){
99
		alert("printing primary address first time");
100
		priName 	= "Ankur Jain";
101
		priAdd1 	= "Bldg. No.90890,";
102
		priAdd2 	= "East Anjenya Temple Street, Basavangudi";
103
		priCity 	= "Raipur";
104
		priPinCode 	= "566786";
105
		priState 	= "Madhya Pradesh";
106
		priMobile 	= "9657598799";
107
		priLandline	= "080 - 56745687";
108
	}else if(str == "makePrimary"){
109
		alert("making primary address");	
110
		// backup of primary address
111
		if($(".noAddress1:visible").length != 1){
112
			arrBackupAdd.push($("#primaryAddress .address").html());
113
		}else{
114
			$("#primaryAddress .addressButton").show();
115
			$(".noAddress1").hide();
116
		}
117
 
118
		// Adding new entry as primary address
119
		priName 	= $("#shippingAddress #txtName").val();
120
		priAdd1 	= $("#shippingAddress #txtAddress").val();
121
		priAdd2 	= $("#shippingAddress #txtAddress2").val();
122
		priCity 	= $("#shippingAddress #city option:selected").val();
123
		priPinCode 	= $("#shippingAddress #txtPinCode").val();
124
		priState 	= $("#shippingAddress #state option:selected").val();
125
		priMobile 	= $("#shippingAddress #txtMobile").val();
126
		priLandline	= $("#shippingAddress #txtAreaCode").val() + ' - ' + $("#shippingAddress #txtLandline").val();
127
	}
128
 
129
	tempPri = priName + "<br />" + priAdd1 + "<br />" + priAdd2 + "<br />" + priCity + "<br />" + priPinCode + "<br />" + priState + "<br /> Mobile: " + priMobile + "<br /> Landline: " + priLandline;
130
 
131
	if(str == "default"){
132
		primaryAddress = '<div class="address">';
133
		primaryAddress += tempPri;
134
		primaryAddress += "</div>";
135
 
136
		primaryAddress += '<div class="addressButton">';
137
		primaryAddress += '	 <div class="imgDeleteButton deleteWidth">';
138
		primaryAddress += '		<div class="left">';
139
		primaryAddress += '		<div class="right">';
140
		primaryAddress += '			 <input type="button" onclick="delAddress(\'primaryAddress\');" value="Delete" class="button" />';
141
		primaryAddress += '		</div>';
142
		primaryAddress += '		</div>';
143
		primaryAddress += '	</div>';
144
		primaryAddress += '</div>';
145
 
146
		$("#primaryAddress").html(primaryAddress);
147
	}else if(str == "makePrimary"){
148
		$("#primaryAddress .address").html(tempPri);
149
	}
150
}
151
 
152
/**
153
	Other Address output for Shipping Address page
154
*/
155
function printOtherAddress(str){
156
 
157
	var otherAddress = "";
158
	var addressID 	 = "";
159
 
160
	var tempAdd;
161
 
162
	// No. of addresses to print
163
	if(str == "default"){
164
		len = 2; 
165
	}else{
166
 
167
		// backup of other addresses
168
		for(var i=0; i<arrOtherAddID.length; i++){
169
			var temp = $("#" + arrOtherAddID[i] + " .address").html();
170
			arrBackupAdd.push(temp);
171
		}
172
 
173
		// Add new id for new entry
174
		arrOtherAddID.push('address' + (arrOtherAddID.length + 1));
175
 
176
		len = arrOtherAddID.length;	
177
 
178
		// Reset address id container
179
		for(var i=0; i<len; i++){
180
			arrOtherAddID.pop();
181
		}
182
 
183
		// If no address is visible, make it hidden
184
		if($(".noAddress2:visible").length > 0){
185
			$(".noAddress2").hide();
186
		}
187
	}
188
 
189
	// Print the addresses
190
 
191
	if(len > 0){
192
		for(var i=0; i<len; i++){
193
			if(str == "default"){
194
				alert("print address" + (i+1));	
195
				otherName 	  = "Ankur Jain " + (i+1);
196
				otherAdd1 	  = "Bldg. No.90890,";
197
				otherAdd2 	  = "East Anjenya Temple Street, Basavangudi";
198
				otherCity 	  = "Raipur";
199
				otherPinCode  = "566786";
200
				otherState 	  = "Madhya Pradesh";
201
				otherMobile   = "9657598799";
202
				otherLandline = "080 - 56745687";
203
 
204
				tempAdd = otherName + "<br />" + otherAdd1 + "<br />" + otherAdd2 + "<br />" + otherCity + "<br />" + otherPinCode + "<br />" + otherState + "<br /> Mobile: " + otherMobile + "<br /> Landline: " + otherLandline;
205
			}else {
206
				// Add new entry as first in other address when save button is clicked
207
				if((i == 0) && (str != "makePrimary")){ 
208
					otherName		= $("#shippingAddress #txtName").val();
209
					otherAdd1 		= $("#shippingAddress #txtAddress").val();
210
					otherAdd2 		= $("#shippingAddress #txtAddress2").val();
211
					otherCity 		= $("#shippingAddress #city option:selected").val();
212
					otherPinCode 	= $("#shippingAddress #txtPinCode").val();
213
					otherState 		= $("#shippingAddress #state option:selected").val();
214
					otherMobile 	= $("#shippingAddress #txtMobile").val();
215
					otherLandline	= $("#shippingAddress #txtAreaCode").val() + ' - ' + $("#shippingAddress #txtLandline").val();
216
 
217
					tempAdd = otherName + "<br />" + otherAdd1 + "<br />" + otherAdd2 + "<br />" + otherCity + "<br />" + otherPinCode + "<br />" + otherState + "<br /> Mobile: " + otherMobile + "<br /> Landline: " + otherLandline;
218
				}else{
219
					if(str != "makePrimary"){
220
						tempAdd = arrBackupAdd[i-1];
221
					}else{
222
						tempAdd = arrBackupAdd[i];
223
					}
224
				}
225
			}
226
 
227
			addressID = 'address' + (i+1);
228
			arrOtherAddID.push(addressID);
229
 
230
			otherAddress += '<div id="' + addressID + '">';
231
 
232
				// Address
233
				otherAddress += '<div class="address">';
234
				otherAddress += tempAdd;
235
				otherAddress += '</div>';
236
 
237
				// Buttons
238
				otherAddress += '<div class="addressButton">';
239
 
240
					// Delete button
241
					otherAddress += '<div class="imgDeleteButton deleteWidth">';
242
					otherAddress += '	<div class="left">';
243
					otherAddress += '	<div class="right">';
244
					otherAddress += '		<input type="button" onclick="delAddress(\'' + addressID + '\');" value="Delete" class="button" />';
245
					otherAddress += '	</div>';
246
					otherAddress += '	</div>';
247
					otherAddress += '</div>';
248
 
249
					// Make primary address button
250
					otherAddress += '<div class="imgEnableButton priAddressWidth">';
251
					otherAddress += '		<div class="left">';
252
					otherAddress += '		<div class="right">';
253
					otherAddress += '			 <input type="button" onclick="makePriAddress(\'' + addressID + '\');" value="Make Primary Address" class="button" />';
254
					otherAddress += '		</div>';
255
					otherAddress += '		</div>';
256
					otherAddress += '</div>';
257
					otherAddress += '<div class="clearBoth"></div>';
258
 
259
				otherAddress += '</div>';
260
 
261
				if(i < len-1){	otherAddress += '<br /><br />';	 }
262
 
263
			otherAddress += '</div>';
264
		}
265
 
266
		$("#addressContainer").html(otherAddress);
267
 
268
		// Reset backup array
269
		len = arrBackupAdd.length;
270
 
271
		for(var i=0; i<len; i++){
272
			arrBackupAdd.pop();
273
		}
274
	}else{
275
		$(".noAddress2").show();
276
	}
277
}
278
 
279
/**
280
	Reset Shiping address for Shipping Address page
281
*/
282
function resetShipingAddress(){
283
	$("#shippingAddress #txtName").val("");
284
	$("#shippingAddress #txtAddress").val("");
285
	$("#shippingAddress #txtAddress2").val("");
286
	$("#shippingAddress #city option[value='0']").attr('selected', 'selected')
287
	$("#shippingAddress #state option[value='0']").attr('selected', 'selected')
288
	$("#shippingAddress #txtPinCode").val("");
289
	$("#shippingAddress #txtMobile").val("");
290
	$("#shippingAddress #txtAreaCode").val("Area Code");
291
	$("#shippingAddress #txtLandline").val("");
292
}
293
 
294
/**
295
	Save address for Shipping Address page
296
*/
297
function saveAddress(str){
298
 
299
	if(str != "cancel"){
300
		// form validation
301
		var nameVal 	= jQuery.trim($("#shippingAddress #txtName").val());
302
		var add1Val 	= jQuery.trim($("#shippingAddress #txtAddress").val());
303
		var stateVal 	= $("#shippingAddress #state option:selected").val();
304
		var cityVal 	= $("#shippingAddress #city option:selected").val();
305
		var pinCodeVal  = jQuery.trim($("#shippingAddress #txtPinCode").val());
306
		var mobileVal	= jQuery.trim($("#shippingAddress #txtMobile").val());
307
		var areaCodeVal = jQuery.trim($("#shippingAddress #txtAreaCode").val());
308
		var landLineVal	= jQuery.trim($("#shippingAddress #txtLandline").val());
309
 
310
		if(nameVal.length == 0){
311
			alert("Please enter name.");
312
 
313
			$("#shippingAddress #txtName").focus();
314
			return false;	
315
		}else if(add1Val.length == 0){
316
			alert("Please enter address.");
317
 
318
			$("#shippingAddress #txtAddress").focus();
319
			return false;	
320
		}else if(stateVal == "0"){
321
			alert("Please select state.");
322
 
323
			$("#shippingAddress #state").focus();
324
			return false;	
325
		}else if(cityVal == "0"){
326
			alert("Please select city.");
327
 
328
			$("#shippingAddress #city").focus();
329
			return false;	
330
		}else if(pinCodeVal.length == 0){
331
			alert("Please enter pin code.");
332
 
333
			$("#shippingAddress #txtPinCode").focus();
334
			return false;	
335
		}else if(mobileVal.length == 0){
336
			alert("Please enter mobile no.");
337
 
338
			$("#shippingAddress #txtMobile").focus();
339
			return false;	
340
		}else if(areaCodeVal.length == 0 || areaCodeVal == "Area Code"){
341
			alert("Please enter area code.");
342
 
343
			$("#shippingAddress #txtAreaCode").focus();
344
			return false;	
345
		}else if(landLineVal.length == 0){
346
			alert("Please enter landline no.");
347
 
348
			$("#shippingAddress #txtLandline").focus();
349
			return false;	
350
		}else{
351
			if(str == "makePrimary"){
352
				printPriAddress(str);
353
 
354
				if(arrBackupAdd.length > 0){
355
					printOtherAddress(str);
356
				}
357
			}else if(str == "save"){
358
				printOtherAddress(str);
359
			}
360
		}
361
	}
362
 
363
	// Enable first addAddress button
364
	$("#addAddress1").removeClass('imgDisableButton').addClass('imgEnableButton');
365
	$("#addAddress1 input[disabled='']").removeAttr('disabled');
366
 
367
	// Show second addAddress button
368
	$("#addAddress2").show();
369
 
370
	// Hide add new address form
371
	$("#addNewAddress").hide();
372
	scrollWindow("shippingAddress", 1000);
373
 
374
	// Reset Form
375
	resetShipingAddress();
376
}
377
 
378
/**
379
	Add address for Shipping Address page
380
*/
381
function addNewAddress(){
382
	// Disable first addAddress button
383
	$("#addAddress1").removeClass('imgEnableButton').addClass('imgDisableButton');
384
	$("#addAddress1 input[name='addAddress1']").attr('disabled','disabled');
385
 
386
	// Hide second addAddress button
387
	$("#addAddress2").hide();
388
 
389
	// Show add new address form
390
	$("#addNewAddress").show();
391
	scrollWindow("addNewAddress", 2000);
392
 
393
	$("#addNewAddress #txtName").focus();
394
}
395
 
396
/**
397
	Make Primary address for Shipping Address page
398
*/
399
function makePriAddress(containerID){
400
	alert("making primary address:   " + containerID);
401
	var arrTempAdd = new Array();
402
	var oldAddress = $("#primaryAddress .address").html(newAddress);
403
 
404
	// Make clicked other address as primary address
405
	var newAddress = $("#" + containerID + " .address").html();
406
	$("#primaryAddress .address").html(newAddress);
407
 
408
	// If primary address delete button is hidden, make it visible
409
	if($(".noAddress1:visible").length > 0){
410
		$("#primaryAddress .addressButton").show();
411
		$(".noAddress1").hide();
412
	}
413
 
414
	if(oldAddress != ""){
415
		arrTempAdd.push(oldAddress);
416
 
417
		// Shift Other addresses
418
		for(var i=0; i<arrOtherAddID.length; i++){
419
			if(containerID != arrOtherAddID[i]){
420
				var temp = $("#" + arrOtherAddID[i] + " .address").html();
421
				arrTempAdd.push(temp);
422
			}
423
		}
424
 
425
		// Display arranged other addresses
426
		for(var i=0; i<arrTempAdd.length; i++){
427
			$("#" + arrOtherAddID[i] + " .address").html(arrTempAdd[i]);
428
		}
429
	}else{
430
		// Remove the clicked container because empty address cann't be swapped with this
431
		$("#" + containerID).remove();
432
 
433
		for(var i=0; i<arrOtherAddID.length; i++){
434
			if(containerID == arrOtherAddID[i]){
435
				arrOtherAddID.splice(i, 1)	
436
			}
437
		}
438
 
439
		if(arrOtherAddID.length == 0){
440
			$(".noAddress2").show();
441
		}
442
	}
443
 
444
	scrollWindow('shippingAddress', 1000);	
445
}
446
 
447
/**
448
	Delete address for Shipping Address page
449
*/
450
function delAddress(containerID){
451
 
452
	if(containerID == "primaryAddress"){
453
		if(arrOtherAddID.length > 0){
454
			alert("Deleting primary address:  " + containerID);
455
			// insert 1st other address value to primary address container
456
			var newAddress =  $("#" + arrOtherAddID[0] + " .address").html();
457
			$("#" + containerID + " .address").html(newAddress);
458
 
459
			// remove 1st other address
460
			$("#" + arrOtherAddID[0]).slideUp('slow', function(){
461
				$(this).remove();
462
			});
463
 
464
			arrOtherAddID.shift(); // remove top element
465
 
466
			if(arrOtherAddID.length == 0){
467
				$(".noAddress2").show();
468
			}
469
		}else{
470
			alert("Deleting primary address:  " + containerID);
471
			$("#" + containerID).slideUp('slow', function(){				
472
				$(".address", this).html("");
473
				$(".addressButton", this).hide();
474
				$(this).show();
475
			});
476
 
477
			$(".noAddress1").show();
478
		}
479
	}else{
480
		alert("Deleting other address:  " + containerID);
481
		$("#" + containerID).slideUp('slow', function(){
482
			$(this).remove();
483
		});
484
 
485
		// remove deleted element from array
486
		for(var i=0; i<arrOtherAddID.length; i++){
487
			if(containerID == arrOtherAddID[i]){
488
				arrOtherAddID.splice(i, 1)	
489
			}
490
		}
491
 
492
		if(arrOtherAddID.length == 0){	
493
			$(".noAddress2").show();	
494
		}
495
	}
496
 
497
}
498
 
499
/**
500
	Shipping Address page setup
501
*/
502
function shippingAddressSetup(){
503
 
504
	// Print Primary address
505
 
506
	// printPriAddress('default');
507
 
508
	// Print Other Address
509
	// printOtherAddress('default');
510
 
511
	// Add Address button
512
	$("#shippingAddress input[name=addAddress1]").click(function(){
513
		addNewAddress();
514
	});
515
 
516
	$("#shippingAddress input[name=addAddress2]").click(function(){
517
		addNewAddress();
518
	});
519
 
520
	// AreaCode default value hide
521
	$("#txtAreaCode").focus(function(){
522
		if($(this).val() == "Area Code"){
523
			$(this).val("");
524
		}
525
	});
526
 
527
	// AreaCode default value show
528
	$("#txtAreaCode").blur(function(){
529
		if($(this).val() == ""){
530
			$(this).val("Area Code");
531
		}
532
	});
533
 
534
	// Save and make primary address button
535
	$("#shippingAddress input[name=saveMakePriAddress]").click(function(){
536
		saveAddress('makePrimary');
537
	});
538
 
539
	// Save address button
540
	$("#shippingAddress input[name=saveAddress]").click(function(){
541
		saveAddress('save');
542
	});
543
 
544
	// cancel address button
545
	$("#shippingAddress input[name=cancelAddress]").click(function(){
546
		saveAddress('cancel');
547
	});
548
}
549
 
550
/**
551
	Personal Login Details page setup
552
*/
553
function personalDetailSetup(){
554
 
555
	preFilledValues(frmPersonal);
556
 
557
	// initialize arr
558
	for(var i=0; i<arrPersonalDetail.length; i++){
559
		arrPersonalDetail[i] = new Array(2);
560
 
561
		arrPersonalDetail[i][0] = false;	// This col specify whether its field value is changed or not
562
 
563
		// Following col will hold initial form data
564
		if(i == 0){ arrPersonalDetail[i][1] = perName; }
568 rajveer 565
		else if(i == 1){ arrPersonalDetail[i][1] = perDateOfBirth; }
566
		else if(i == 2){ arrPersonalDetail[i][1] = perSex; }
567
		else if(i == 3){ arrPersonalDetail[i][1] = perCommEmail; }
568
		else if(i == 4){ arrPersonalDetail[i][1] = perSubscribe; }
595 rajveer 569
		else if(i == 5){ arrPersonalDetail[i][1] = perPhone; }
538 rajveer 570
	}
571
 
572
	// change status for name
573
	$(perFieldName).change(function(){			
574
		if($(this).val() != arrPersonalDetail[0][1]){
575
			perName = $(this).val();
576
			arrPersonalDetail[0][0] = true;
577
		}else{
578
			perName = arrPersonalDetail[0][1];
579
			arrPersonalDetail[0][0] = false;
580
		}
581
 
582
		checkFieldChange(frmPersonal);
583
	});
584
 
585
	// change status for month
568 rajveer 586
	$(perFieldDateOfBirth).change(function(){
538 rajveer 587
		if($("option:selected", this).val() != arrPersonalDetail[1][1]){
568 rajveer 588
			perDateOfBirth = $("option:selected", this).val();
538 rajveer 589
			arrPersonalDetail[1][0] = true;
590
		}else{
568 rajveer 591
			perDateOfBirth = arrPersonalDetail[1][1];
538 rajveer 592
			arrPersonalDetail[1][0] = false;
593
		}
594
 
595
		checkFieldChange(frmPersonal);
596
	});
597
 
595 rajveer 598
 
599
 
600
 
538 rajveer 601
	// change status for sex
602
	$(perFieldSex).change(function(){
568 rajveer 603
		if($(this).val() != arrPersonalDetail[2][1]){
538 rajveer 604
			perSex = $(this).val();
568 rajveer 605
			arrPersonalDetail[2][0] = true;
538 rajveer 606
		}else{
568 rajveer 607
			perSex = arrPersonalDetail[2][1];
608
			arrPersonalDetail[2][0] = false;
538 rajveer 609
		}
610
 
611
		checkFieldChange(frmPersonal);
612
	});
613
 
614
	// change status for communication email
615
	$(perFieldCommEmail).change(function(){			
568 rajveer 616
		if($(this).val() != arrPersonalDetail[3][1]){
538 rajveer 617
			perCommEmail = $(this).val();
568 rajveer 618
			arrPersonalDetail[3][0] = true;
538 rajveer 619
		}else{
568 rajveer 620
			perCommEmail = arrPersonalDetail[3][1];
621
			arrPersonalDetail[3][0] = false;
538 rajveer 622
		}
623
 
624
		checkFieldChange(frmPersonal);
625
	});
626
 
627
	// change status for subscribe
628
	$(perFieldSubscribe).change(function(){
568 rajveer 629
		if($(this).attr('checked') != arrPersonalDetail[4][1]){
538 rajveer 630
			perSubscribe = $(this).attr('checked');
568 rajveer 631
			arrPersonalDetail[4][0] = true;
538 rajveer 632
		}else{
568 rajveer 633
			perSubscribe = arrPersonalDetail[4][1];
634
			arrPersonalDetail[4][0] = false;
538 rajveer 635
		}
636
 
637
		checkFieldChange(frmPersonal);
638
	});
595 rajveer 639
 
640
 
641
	// change status for name
642
	$(perPhone).change(function(){			
643
		if($(this).val() != arrPersonalDetail[5][1]){
644
			perPhone = $(this).val();
645
			arrPersonalDetail[5][0] = true;
646
		}else{
647
			perPhone = arrPersonalDetail[5][1];
648
			arrPersonalDetail[5][0] = false;
649
		}
650
 
651
		checkFieldChange(frmPersonal);
652
	});
538 rajveer 653
 
654
	// on click of save button
655
	$(frmPersonal).submit(function(){
656
 
657
		var nameVal 	 = jQuery.trim($(perFieldName).val());
658
		var commEmailVal = jQuery.trim($(perFieldCommEmail).val());
659
 
660
		if(nameVal.length == 0){
661
			alert("Please enter name.");
662
 
663
			$(perFieldName).focus();
664
			return false;	
665
		}else if(commEmailVal.length == 0){
666
			alert("Please enter communication email.");
667
 
668
			$(perFieldCommEmail).focus();
669
			return false;	
670
		}else if(!commEmailVal.match(emailExp)){
671
			alert("Please enter valid communication email.");
672
 
673
			$(perFieldCommEmail).focus();
674
			return false;	
675
		}else{
676
			str = "Name : " + perName + "\n";
568 rajveer 677
			str += "Date Of Birth : " + perDateOfBirth + "\n";
538 rajveer 678
			str += "Sex : " + perSex + "\n";
679
			str += "Communication Email : " + perCommEmail + "\n";
680
			str += "Subscribe : " + perSubscribe + "\n";
595 rajveer 681
			str += "Phone : " + perPhone + "\n";
538 rajveer 682
 
683
			alert("Submit the updated values to Database: \n\n" + str);
684
		}
685
	});
686
 
687
	// on click of cancel button
688
	$(frmPersonal + " input[name='cancel']").click(function(){
689
		blnCancelClicked = true;
690
		preFilledValues(frmPersonal); // reset values
691
	});
692
}
693
 
694
/**
695
	Login Detail page for registered user via shop2020 setup
696
*/
697
function registeredUserSetup(){
698
	preFilledValues(frmLogReg);
699
 
700
	tempLogEmail = logRegEmail;
701
 
702
	// change status for login email
703
	$(regFieldEmail).change(function(){			
704
		if($(this).val() != tempLogEmail){
705
			logRegEmail = $(this).val();
706
			blnFieldChanged = true;
707
		}else{
708
			logRegEmail = tempLogEmail;
709
			blnFieldChanged = false;
710
		}
711
 
712
		checkFieldChange(frmLogReg);
713
	});
714
 
715
	// change status for old password
716
	$(regFieldOldPass).change(function(){	
717
		blnFieldChanged = true;
718
		checkFieldChange(frmLogReg);
719
	});
720
 
721
	// change status for new password
722
	$(regFieldNewPass).change(function(){	
723
		blnFieldChanged = true;
724
		checkFieldChange(frmLogReg);
725
	});
726
 
727
	// change status for confirm password
728
	$(regFieldConPass).change(function(){	
729
		blnFieldChanged = true;
730
		checkFieldChange(frmLogReg);
731
	});
732
 
733
	// on click of save button
734
	$(frmLogReg).submit(function(){
735
		var emailVal 	 = jQuery.trim($(regFieldEmail).val());
736
		var oldPassVal 	 = jQuery.trim($(regFieldOldPass).val());
737
		var newPassVal 	 = jQuery.trim($(regFieldNewPass).val());
738
		var conPassVal 	 = jQuery.trim($(regFieldConPass).val());
739
 
740
		if(emailVal.length == 0){
741
			alert("Please enter Login ID.");
742
 
743
			$(regFieldEmail).focus();
744
			return false;	
745
		}else if(!emailVal.match(emailExp)){
746
			alert("Please enter valid Login ID.");
747
 
748
			$(regFieldEmail).focus();
749
			return false;	
750
		}else if(oldPassVal.length == 0){
751
			alert("Please enter old password.");
752
 
753
			$(regFieldOldPass).focus();
754
			return false;	
755
		}else if(newPassVal.length == 0){
756
			alert("Please enter new password.");
757
 
758
			$(regFieldNewPass).focus();
759
			return false;	
760
		}else if(newPassVal.length < 6){
761
			alert("Password length should be minimum 6 characters long!");
762
 
763
			$(regFieldNewPass).focus();
764
			return false;	
765
		}else if(conPassVal.length == 0){
766
			alert("Please enter confirm password.");
767
 
768
			$(regFieldConPass).focus();
769
			return false;	
770
		}else if(conPassVal.length < 6){
771
			alert("Password length should be minimum 6 characters long!");
772
 
773
			$(regFieldConPass).focus();
774
			return false;	
775
		}else if(newPassVal != conPassVal){
776
			alert("Confirm password doesn't match with new password!");
777
 
778
			$(regFieldConPass).focus();
779
			return false;	
780
 
781
		}else{
782
			str = "Login ID : " + logRegEmail + "\n";
783
			str += "Old Password : " + oldPassVal + "\n";
784
			str += "New Password : " + newPassVal + "\n";
785
 
786
			alert("Submit the updated values to Database: \n\n" + str);
787
		}
788
 
789
	});
790
 
791
	// on click of cancel button
792
	$(frmLogReg + " input[name='cancel']").click(function(){
793
		blnCancelClicked = true;
794
		preFilledValues(frmLogReg);	// reset values
795
	});
796
}
797
 
798
/**
799
	Login Detail page for registered user via facebook setup
800
*/
801
function registeredUserFBSetup(){
802
	preFilledValues(frmLogRegFB);
803
 
804
	tempLogEmail = logRegFBEmail;
805
 
806
	// change status for login email
807
	$(regFieldFBEmail).change(function(){			
808
		if($(this).val() != tempLogEmail){
809
			logRegFBEmail = $(this).val();
810
			blnFieldChanged = true;
811
		}else{
812
			logRegFBEmail = tempLogEmail;
813
			blnFieldChanged = false;
814
		}
815
 
816
		checkFieldChange(frmLogRegFB);
817
	});
818
 
819
	// change status for old password
820
	$(regFieldFBPass).change(function(){	
821
		blnFieldChanged = true;
822
		checkFieldChange(frmLogRegFB);
823
	});
824
 
825
	// on click of save button
826
	$(frmLogRegFB).submit(function(){
827
		var emailVal 	 = jQuery.trim($(regFieldFBEmail).val());
828
		var passVal 	 = jQuery.trim($(regFieldFBPass).val());
829
 
830
		if(emailVal.length == 0){
831
			alert("Please enter Login ID.");
832
 
833
			$(regFieldFBEmail).focus();
834
			return false;	
835
		}else if(!emailVal.match(emailExp)){
836
			alert("Please enter valid Login ID.");
837
 
838
			$(regFieldFBEmail).focus();
839
			return false;	
840
		}else if(passVal.length == 0){
841
			alert("Please enter password.");
842
 
843
			$(regFieldFBPass).focus();
844
			return false;	
845
		}else{
846
			str = "Facbook Login : " + logRegFBEmail + "\n";
847
			str += "Old Password : " + passVal + "\n";
848
 
849
			alert("Submit the updated values to Database: \n\n" + str);
850
		}
851
 
852
	});
853
 
854
	// on click of cancel button
855
	$(frmLogRegFB + " input[name='cancel']").click(function(){
856
		blnCancelClicked = true;
857
		preFilledValues(frmLogRegFB);	// reset values
858
	});
859
}
860
 
861
/**
862
	Pre-filled values of Personal & Login Details page
863
*/
864
function preFilledValues(frm){
865
 
866
	if(frm == "#frmPersonalDetails"){
867
 
868
		if(blnCancelClicked){
869
			perName 	 = arrPersonalDetail[0][1];
568 rajveer 870
			perDateOfBirth 	 = arrPersonalDetail[1][1];
871
			perSex 		 = arrPersonalDetail[2][1];
872
			perCommEmail = arrPersonalDetail[3][1];
873
			perSubscribe = arrPersonalDetail[4][1];
595 rajveer 874
			perPhone = arrPersonalDetail[5][1];
538 rajveer 875
 
876
			blnCancelClicked = false;
877
		}
878
 
879
		$(perFieldName).val(perName);
880
 
568 rajveer 881
		$(perFieldDateOfBirth).val(perDateOfBirth);
538 rajveer 882
 
595 rajveer 883
		$(perFieldPhone).val(perPhone);
884
 
538 rajveer 885
		$(frmPersonal + " input[value='" + perSex + "']").attr("checked", "checked");
886
 
887
		$(perFieldCommEmail).val(perCommEmail);
888
 
889
		if(perSubscribe){ $(perFieldSubscribe).attr("checked", "checked");	}
890
 
891
		disableSaveCancel(frm)
892
 
893
	}else if(frm == "#frmRegisUser"){
894
 
895
		if(blnCancelClicked){ 
896
			logRegEmail	= tempLogEmail;	
897
 
898
			$(regFieldCaptcha).val("");
899
			$(regFieldOldPass).val("");
900
			$(regFieldNewPass).val("");
901
			$(regFieldConPass).val("");
902
 
903
			blnCancelClicked = false;
904
		}
905
 
906
		$(regFieldEmail).val(logRegEmail);
907
 
908
		disableSaveCancel(frm)
909
 
910
	}else if(frm == "#frmFacebookUser"){
911
 
912
		if(blnCancelClicked){ 
913
			logRegFBEmail	= tempLogEmail;	
914
 
915
			$(regFieldFBEmail).val("");
916
			$(regFieldFBPass).val("");
917
 
918
			blnCancelClicked = false;
919
		}
920
 
921
		$(regFieldFBEmail).val(logRegFBEmail);
922
 
923
		disableSaveCancel(frm)
924
	}
925
 
926
}
927
 
928
/**
929
	Check if any field is changed for Personal & Login Details page, if yes then enable save & cancel buttons
930
*/
931
function checkFieldChange(frm){
932
 
933
	if(frm == "#frmPersonalDetails"){
934
		for(var i=0; i<arrPersonalDetail.length; i++){
935
			if(arrPersonalDetail[i][0]){
936
				blnFieldChanged = true;
937
			}
938
		}
939
	}
940
 
941
	// if field changed enable buttons or else disable them
942
	if(blnFieldChanged){
943
		enableSaveCancel(frm)
944
	}else{
945
		disableSaveCancel(frm)
946
	}
947
 
948
	blnFieldChanged = false;
949
}
950
 
951
/**
952
	Enable save & cancel button for Personal & Login Details page
953
*/
954
function enableSaveCancel(frm){
955
 
956
	var frmButtonID;
957
 
958
	if(frm == "#frmPersonalDetails"){
959
		frmButtonID = "#formButtons";
960
	}else if(frm == "#frmRegisUser"){
961
		frmButtonID = "#formButtons1";
962
	}else if(frm == "#frmFacebookUser"){
963
		frmButtonID = "#formButtons2";
964
	}
965
 
966
	$(frm + " " + frmButtonID + " .imgDisableButton").removeClass('imgDisableButton').addClass('imgEnableButton');
967
	$(frm + " " + frmButtonID + " input[disabled='']").removeAttr('disabled');
968
}
969
 
970
/**
971
	Disable save & cancel button for Personal & Login Details page
972
*/
973
function disableSaveCancel(frm){
974
 
975
	var frmButtonID;
976
 
977
	if(frm == "#frmPersonalDetails"){
978
		frmButtonID = "#formButtons";
979
	}else if(frm == "#frmRegisUser"){
980
		frmButtonID = "#formButtons1";
981
	}else if(frm == "#frmFacebookUser"){
982
		frmButtonID = "#formButtons2";
983
	}
984
 
985
	$(frm + " " + frmButtonID + " .imgEnableButton").removeClass('imgEnableButton').addClass('imgDisableButton');
986
	$(frm + " " + frmButtonID + " input").attr("disabled", "disabled");
987
}
988
 
989
/** 
990
	Scroll window either to top or bottom
991
*/
992
function scrollWindow(id, delay){
993
	$('html, body').animate({
994
		scrollTop: $("#" + id).offset().top
995
	}, delay);
996
}
997
 
998
/** 
999
	Show Shipment details on click of AWBNo. link
1000
*/
1001
function showShipmentDetails(value){
1002
	jQuery.ajax({
1003
          type: "GET",
1004
          url: "./aramax-updates/"+value,
1005
          success: function(msg){
1006
    	       $("#orderShippingStatus").html(msg);
1007
          }
1008
     	});
1009
 
1010
	$("#shipmentDetails").show();
1011
	$("#shipmentDetails .awbNo").text(value);
1012
 
1013
	scrollWindow('shipmentDetails', 2000);
1014
}
1015
 
1016
/** 
1017
	Close Shipment details on click of close button
1018
*/
1019
function closeShipmentDetails(){
1020
	$("#shipmentDetails").hide();
1021
 
1022
	scrollWindow('myAccount', 1000);
1023
}