Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
23026 ashik.ali 1
$().ready(function() {
2
	$("form#update-retailer-details-form input").each(function(){
3
		$(this).attr('autocomplete', 'off');
4
	});
5
});
6
$().ready(function() {
7
        $('#update-retailer-details-form').validate({
8
			submitHandler: function (form, event) {
9
				event.preventDefault();
10
				if(validateRetailerDetails()){
11
					alert("Please fix errors");
12
					return false;
13
				}
14
				var json = retailerDetailsJson();
15
				console.log("retailerJson = " + json);
16
				if(confirm("Are you sure you want to update Retailer Details!") == true){
23378 ashik.ali 17
					doAjaxRequestWithJsonHandler(context+"/retailerDetails", "PUT", json, function(response){
18
						$('#retailer-details-container').html(response);
19
					});
20
		            return false; // required to block normal submit since you used ajax
23026 ashik.ali 21
				}
22
	       }
23
	});
24
 
23076 ashik.ali 25
});
26
 
27
$().ready(function(){
23080 ashik.ali 28
	$('#existing-shops').click(function(e){
23093 ashik.ali 29
		console.log("existing-shops clicked");
23076 ashik.ali 30
		var shopDetailsSize = $("#shopDetailsSize").attr("size");
31
		for(var i = 0; i < shopDetailsSize; i++){
32
			if($(e.target).is('#sameAsRetailerAddress'+i)){
33
				console.log("sameAsRetailerAddress"+ i +" Clicked!");
34
				if (e.target.checked) {
23080 ashik.ali 35
					$(e.target).val('true');
23076 ashik.ali 36
					processSameAsRetailerAddressEvent(i);
23080 ashik.ali 37
				}else{
38
					$(e.target).val('false');
23076 ashik.ali 39
				}
40
			}
41
		}
42
	});
43
})
44
 
23080 ashik.ali 45
$().ready(function(){
46
	$('#new-shops').click(function(e){
23093 ashik.ali 47
		console.log("new-shops clicked");
23080 ashik.ali 48
		var shopDetailsSize = $("#shopDetailsSize").attr("size");
49
		for(var i = 0; i < shopDetailsSize; i++){
50
			if($(e.target).is('#sameAsRetailerAddress'+i)){
51
				console.log("sameAsRetailerAddress"+ i +" Clicked!");
52
				if (e.target.checked) {
53
					$(e.target).val('true');
54
					//processSameAsRetailerAddressEvent(i);
23094 ashik.ali 55
					$('#new-shops-address').html('');
23080 ashik.ali 56
				}else{
57
					$(e.target).val('false');
58
					var shopAddressUi = getNewShopAddressUiElements(i);
23094 ashik.ali 59
					$('#new-shops-address').html(shopAddressUi);
23080 ashik.ali 60
				}
61
			}
62
		}
63
	});
64
})
65
 
66
function getNewShopAddressUiElements(counter){
67
	var shopAddressUi = '<div class="row">'+
68
							'<div class="col-lg-4 form-group">'+
69
								'<p class="bold-details">NAME</p>'+
70
							'</div>'+
71
							'<div class="col-lg-6 form-group">'+
72
								'<input placeholder="Name" id="shopAddressName'+counter+'" name="shopAddressName'+counter+'" type="text" value="" class="form-control input-sm">'+
73
							'</div>'+
74
						'</div>'+
75
						'<div class="row">'+
76
							'<div class="col-lg-4 form-group">'+
77
								'<p class="bold-details">LINE1</p>'+
78
							'</div>'+
79
							'<div class="col-lg-6 form-group">'+
80
								'<input placeholder="Line1" id="shopAddressLine1'+counter+'" name="shopAddressLine1'+counter+'" type="text" value="" class="form-control input-sm">'+
81
							'</div>'+
82
						'</div>'+
83
						'<div class="row">'+
84
							'<div class="col-lg-4 form-group">'+
85
								'<p class="bold-details">LINE2</p>'+
86
							'</div>'+
87
							'<div class="col-lg-6 form-group">'+
88
								'<input placeholder="Line2" id="shopAddressLine2'+counter+'" name="shopAddressLine2'+counter+'" type="text" value="" class="form-control input-sm">'+
89
							'</div>'+
90
						'</div>'+
91
 
92
						'<div class="row">'+
93
							'<div class="col-lg-4 form-group">'+
94
								'<p class="bold-details">CITY</p>'+
95
							'</div>'+
96
							'<div class="col-lg-6 form-group">'+
97
								'<input placeholder="City" id="shopAddressCity'+counter+'" name="shopAddressCity'+counter+'" type="text" value="" class="form-control input-sm">'+
98
							'</div>'+
99
						'</div>'+
100
 
101
						'<div class="row">'+
102
							'<div class="col-lg-4 form-group">'+
103
								'<p class="bold-details">PIN CODE</p>'+
104
							'</div>'+
105
							'<div class="col-lg-6 form-group">'+
106
								'<input placeholder="Pin Code" id="shopAddressPinCode'+counter+'" name="shopAddressPinCode'+counter+'" type="text" value="" class="form-control input-sm">'+
107
							'</div>'+
108
						'</div>'+
109
 
110
						'<div class="row">'+
111
							'<div class="col-lg-4 form-group">'+
112
								'<p class="bold-details">STATE</p>'+
113
							'</div>'+
114
							'<div class="col-lg-6 form-group">'+
23331 ashik.ali 115
								'<select class="form-control input-sm" id="shopAddressState'+counter+'" name="shopAddressState'+counter+'" placeholder="State">'+
116
									'<option value="" disabled selected>State</option>';
117
									for(var index = 0; index< stateNames.length; index++){
118
										shopAddressUi = shopAddressUi + '<option value="'+stateNames[index]+'">'+stateNames[index]+'</option>'
119
									}
120
								shopAddressUi = shopAddressUi + '</select>'+
23080 ashik.ali 121
							'</div>'+
122
						'</div>';
123
	return shopAddressUi;
124
}
125
 
23076 ashik.ali 126
function processSameAsRetailerAddressEvent(counter){
127
	$('#shopAddressName'+counter).val($('#retailerAddressName').val());
128
	$('#shopAddressLine1'+counter).val($('#retailerAddressLine1').val());
129
	$('#shopAddressLine2'+counter).val($('#retailerAddressLine2').val());
130
	$('#shopAddressCity'+counter).val($('#retailerAddressCity').val());
131
	$('#shopAddressPinCode'+counter).val($('#retailerAddressPinCode').val());
132
	$('#shopAddressState'+counter).val($('#retailerAddressState').val());
23331 ashik.ali 133
}
134
 
23347 ashik.ali 135
$('#fofoPartner').on('change', function() { 
136
    if (this.checked) {
137
    	$('#fofoPartner').val('true');
138
    }else{
139
    	$('#fofoPartner').val('false');
140
    }
141
});
23343 ashik.ali 142
 
23347 ashik.ali 143
 
144
$('#active').on('change', function() { 
145
    if (this.checked) {
23378 ashik.ali 146
    		$('#active').val('true');
23347 ashik.ali 147
    }else{
23378 ashik.ali 148
    		$('#active').val('false');
23347 ashik.ali 149
    }
150
});
151
 
152
 
23343 ashik.ali 153
function validateRetailerDetails(){
154
	console.log("validating Retailer Details...");
155
	var error = false;
156
 
157
	var firstName = $("form#update-retailer-details-form input[name=firstName]").val();
158
	console.log("firstName = " + firstName);
159
	$("#firstName").removeClass("border-highlight");
160
	if(firstName == ""){
161
		alert("First Name is required");
162
		$("#firstName").addClass("border-highlight");
163
		error = true;
164
		return error;
165
	}
166
 
167
	var lastName = $("form#update-retailer-details-form input[name=lastName]").val();
168
	console.log("lastName = " + lastName);
169
	$("#lastName").removeClass("border-highlight");
170
	if(firstName == ""){
171
		alert("Last Name is required");
172
		$("#lastName").addClass("border-highlight");
173
		error = true;
174
		return error;
175
	}
176
 
177
	var emailId = $("form#update-retailer-details-form input[name=emailId]").val();
178
	console.log("emailId = " + emailId);
179
	$("#emailId").removeClass("border-highlight");
180
	if(emailId == ""){
181
		alert("Email Id is required");
182
		$("#emailId").addClass("border-highlight");
183
		error = true;
184
		return error;
185
	}
186
 
187
	var mobileNumber = $("form#update-retailer-details-form input[name=mobileNumber]").val();
188
	console.log("mobileNumber = " + mobileNumber);
189
	$("#mobileNumber").removeClass("border-highlight");
190
	if(mobileNumber == ""){
191
		alert("Mobile Number is required");
192
		$("#mobileNumber").addClass("border-highlight");
193
		error = true;
194
		return error;
195
	}
196
 
197
	var retailerName = $("form#update-retailer-details-form input[name=retailerName]").val();
198
	console.log("retailerName = " + retailerName);
199
	$("#retailerName").removeClass("border-highlight");
200
	if(retailerName == ""){
201
		alert("Retailer Name is required");
202
		$("#retailerName").addClass("border-highlight");
203
		error = true;
204
		return error;
205
	}
206
 
207
	/*var retailerNumber = $("form#update-retailer-details-form input[name=retailerNumber]").val();
208
	console.log("retailerNumber = " + retailerNumber);
209
	$("#retailerNumber").removeClass("border-highlight");
210
	if(retailerNumber == ""){
211
		alert("Retailer Number is required");
212
		$("#retailerNumber").addClass("border-highlight");
213
		error = true;
214
		return error;
215
	}*/
216
 
217
 
218
	var gstNumber = $("form#update-retailer-details-form input[name=gstNumber]").val();
219
	console.log("gstNumber = " + gstNumber);
220
	var fofo = $("form#update-retailer-details-form input[name=fofoPartner]").val();
221
	$("#gstNumber").removeClass("border-highlight");
222
 
23377 ashik.ali 223
	if($("#district-name-container").val() != undefined){
224
		var districtName = $("#districtName option:selected").val();
225
		if(fofo == "true" && (districtName == undefined || districtName == "")){
226
			alert("Please choose district name");
227
			$("#districtName").addClass("border-highlight");
228
			error = true;
229
			return error;
230
		}
23343 ashik.ali 231
	}
232
 
233
	if(fofo == "true" && gstNumber == ""){
234
		alert("For Fofo Partner GST number is required");
235
		$("#gstNumber").addClass("border-highlight");
236
		error = true;
237
		return error;
238
	}
239
 
240
 
241
 
242
	var fileSelector = $('#retailerDocument')[0];
243
	if(fileSelector != undefined && fileSelector.files[0] == undefined){
244
		alert("Retailer Document is required");
245
		error = true;
246
		return error;
247
	}
248
 
249
	var retailerAddressName = $("form#update-retailer-details-form input[name=retailerAddressName]").val();
250
	console.log("retailerAddressName = " + retailerAddressName);
251
	$("#retailerAddressName").removeClass("border-highlight");
252
	if(retailerAddressName == ""){
253
		alert("Retailer Address Name is required");
254
		$("#retailerAddressName").addClass("border-highlight");
255
		error = true;
256
		return error;
257
	}
258
 
259
	var retailerAddressLine1 = $("form#update-retailer-details-form input[name=retailerAddressLine1]").val();
260
	console.log("retailerAddressLine1 = " + retailerAddressLine1);
261
	$("#retailerAddressLine1").removeClass("border-highlight");
262
	if(retailerAddressLine1 == ""){
263
		alert("Retailer Address Line1 is required");
264
		$("#retailerAddressLine1").addClass("border-highlight");
265
		error = true;
266
		return error;
267
	}
268
 
269
	var retailerAddressLine2 = $("form#update-retailer-details-form input[name=retailerAddressLine2]").val();
270
	console.log("retailerAddressLine2 = " + retailerAddressLine2);
271
	$("#retailerAddressLine2").removeClass("border-highlight");
272
	if(retailerAddressLine2 == ""){
273
		alert("Retailer Address Line2 is required");
274
		$("#retailerAddressLine2").addClass("border-highlight");
275
		error = true;
276
		return error;
277
	}
278
 
279
	var retailerAddressCity = $("form#update-retailer-details-form input[name=retailerAddressCity]").val();
280
	console.log("retailerAddressCity = " + retailerAddressCity);
281
	$("#retailerAddressCity").removeClass("border-highlight");
282
	if(retailerAddressCity == ""){
283
		alert("Retailer Address City is required");
284
		$("#retailerAddressCity").addClass("border-highlight");
285
		error = true;
286
		return error;
287
	}
288
 
289
	var retailerAddressPinCode = $("form#update-retailer-details-form input[name=retailerAddressPinCode]").val();
290
	console.log("retailerAddressPinCode = " + retailerAddressPinCode);
291
	$("#retailerAddressPinCode").removeClass("border-highlight");
292
	if(retailerAddressPinCode == ""){
293
		alert("Retailer Address Pin Code is required");
294
		$("#retailerAddressPinCode").addClass("border-highlight");
295
		error = true;
296
		return error;
297
	}
298
 
299
	var retailerAddressState = $("#retailerAddressState option:selected").val();
300
	console.log("retailerAddressState = " + retailerAddressState);
301
	$("#retailerAddressState").removeClass("border-highlight");
302
	if(retailerAddressState == ""){
303
		alert("Retailer Address State is required");
304
		$("#retailerAddressState").addClass("border-highlight");
305
		error = true;
306
		return error;
307
	}
308
 
309
 
310
	//start from here
311
	var shopDetailsSize = $("#shopDetailsSize").attr("size");
312
	for(var i = 0; i < shopDetailsSize; i++){
313
		var shopName = $("form#update-retailer-details-form input[name=shopName"+i+"]").val();
314
		$("form#update-retailer-details-form input[name=shopName"+i+"]").removeClass("border-highlight");
315
		if(shopName == ""){
316
			alert("Shop Name is required");
317
			$("form#update-retailer-details-form input[name=shopName"+i+"]").addClass("border-highlight");
318
			error = true;
319
			return error;
320
		}
321
		var fileSelector = $('#retailerShopDocument'+i)[0];
322
		if(fileSelector != undefined && fileSelector.files[0] == undefined){
323
			alert("Retailer Shop Document is required");
324
			error = true;
325
			return error;
326
		}
327
		var shopAddressName = $("form#update-retailer-details-form input[name=shopAddressName"+i+"]").val();
328
		$("form#update-retailer-details-form input[name=shopAddressName"+i+"]").removeClass("border-highlight");
329
		if(shopAddressName == ""){
330
			alert("Shop Address Name is required");
331
			$("form#update-retailer-details-form input[name=shopAddressName"+i+"]").addClass("border-highlight");
332
			error = true;
333
			return error;
334
		}
335
		var shopAddressLine1 = $("form#update-retailer-details-form input[name=shopAddressLine1"+i+"]").val();
336
		$("form#update-retailer-details-form input[name=shopAddressLine1"+i+"]").removeClass("border-highlight");
337
		if(shopAddressLine1 == ""){
338
			alert("Shop Address Line1 is required");
339
			$("form#update-retailer-details-form input[name=shopAddressLine1"+i+"]").addClass("border-highlight");
340
			error = true;
341
			return error;
342
		}
343
		var shopAddressLine2 = $("form#update-retailer-details-form input[name=shopAddressLine2"+i+"]").val();
344
		$("form#update-retailer-details-form input[name=shopAddressLine2"+i+"]").removeClass("border-highlight");
345
		if(shopAddressLine2 == ""){
346
			alert("Shop Address Line2 is required");
347
			$("form#update-retailer-details-form input[name=shopAddressLine2"+i+"]").addClass("border-highlight");
348
			error = true;
349
			return error;
350
		}
351
		var shopAddressCity = $("form#update-retailer-details-form input[name=shopAddressCity"+i+"]").val();
352
		$("form#update-retailer-details-form input[name=shopAddressCity"+i+"]").removeClass("border-highlight");
353
		if(shopAddressCity == ""){
354
			alert("Shop Address City is required");
355
			$("form#update-retailer-details-form input[name=shopAddressCity"+i+"]").addClass("border-highlight");
356
			error = true;
357
			return error;
358
		}
359
		var shopAddressPinCode = $("form#update-retailer-details-form input[name=shopAddressPinCode"+i+"]").val();
360
		$("form#update-retailer-details-form input[name=shopAddressPinCode"+i+"]").removeClass("border-highlight");
361
		if(shopAddressPinCode == ""){
362
			alert("Shop Address is Pin Code required");
363
			$("form#update-retailer-details-form input[name=shopAddressPinCode"+i+"]").addClass("border-highlight");
364
			error = true;
365
			return error;
366
		}
367
		var shopAddressState = $("#shopAddressState"+i+" option:selected").val();
368
		$("#shopAddressState"+i+" option:selected").removeClass("border-highlight");
369
		if(shopAddressState == ""){
370
			alert("Shop Address State is required");
371
			$("#shopAddressState"+i+" option:selected").addClass("border-highlight");
372
			error = true;
373
			return error;
374
		}
375
	}
376
 
377
	console.log("validation retailer details error = " + error);
378
	return error;
379
}
380
 
381
 
382
function retailerDetailsJson(){
383
	console.log("retailerDetailsJson")
384
	var retailerDetailsObject = {};
385
	retailerDetailsObject['userFirstName'] = $("form#update-retailer-details-form input[name=firstName]").val();
386
	retailerDetailsObject['userLastName'] = $("form#update-retailer-details-form input[name=lastName]").val();
387
	retailerDetailsObject['userEmailId'] = $("form#update-retailer-details-form input[name=emailId]").val();
388
	retailerDetailsObject['userMobileNumber'] = $("form#update-retailer-details-form input[name=mobileNumber]").val();
389
 
390
	//retailerDetailsObject['emailIdOrMobileNumber'] = $('#retailer-details-search-text').val().trim();
391
	retailerDetailsObject['emailIdOrMobileNumber'] = $("form#update-retailer-details-form input[name=emailId]").val();
392
	retailerDetailsObject['name'] = $("form#update-retailer-details-form input[name=retailerName]").val();
393
	retailerDetailsObject['number'] = $("form#update-retailer-details-form input[name=retailerNumber]").val();
23378 ashik.ali 394
	retailerDetailsObject['districtName'] = $("#districtName option:selected").val();
395
	// = districtName;
396
	var fofo = $("form#update-retailer-details-form input[name=fofoPartner]").val();
397
	retailerDetailsObject['fofo'] = fofo == "true";
23343 ashik.ali 398
	retailerDetailsObject['gstNumber'] = $("form#update-retailer-details-form input[name=gstNumber]").val();
23378 ashik.ali 399
	var active = $("form#update-retailer-details-form input[name=active]").val();
400
	retailerDetailsObject['active'] = active == "true"; 
23343 ashik.ali 401
	var fileSelector = $('#retailerDocument')[0];
402
	if(fileSelector != undefined && fileSelector.files[0] != undefined){
403
		var documentId = uploadDocument(fileSelector.files[0]);
404
		retailerDetailsObject['documentId'] = documentId;
405
	}else{
406
		retailerDetailsObject['documentId'] = 0;
407
	}
408
 
409
	//retailerDetailsObject['file'] = $('#retailerDocument')[0].files[0];
410
	var retailerAddressObject = {};
411
	retailerAddressObject['name'] = $("form#update-retailer-details-form input[name=retailerAddressName]").val();
412
	retailerAddressObject['line1'] = $("form#update-retailer-details-form input[name=retailerAddressLine1]").val();
413
	retailerAddressObject['line2'] = $("form#update-retailer-details-form input[name=retailerAddressLine2]").val();
414
	retailerAddressObject['city'] = $("form#update-retailer-details-form input[name=retailerAddressCity]").val();
415
	retailerAddressObject['pinCode'] = $("form#update-retailer-details-form input[name=retailerAddressPinCode]").val();
416
	retailerAddressObject['state'] = $("#retailerAddressState option:selected").val();
417
 
418
	retailerDetailsObject['address'] = retailerAddressObject;
419
 
420
	retailerDetailsObject['shops'] = [];
421
	var shopDetailsSize = $("#shopDetailsSize").attr("size");
422
 
423
	for(var i = 0; i < shopDetailsSize; i++){
424
		var shopObject = {};
425
		var shopId = $("form#update-retailer-details-form input[name=shopName"+i+"]").attr('shopId');
426
		shopObject['shopId'] = shopId;
427
		shopObject['name'] = $("form#update-retailer-details-form input[name=shopName"+i+"]").val();
428
 
429
		var fileSelector = $('#retailerShopDocument'+i)[0];
430
		if(fileSelector != undefined && fileSelector.files[0] != undefined){
431
			var documentId = uploadDocument(fileSelector.files[0]);
432
			shopObject['documentId'] = documentId;
433
		}else{
434
			shopObject['documentId'] = 0;
435
		}
436
		var sameAsRetailerAddress = $("form#update-retailer-details-form input[name=sameAsRetailerAddress"+i+"]").val();
437
		shopObject['sameAsRetailerAddress'] = (sameAsRetailerAddress == 'true');
438
		if(shopId == '0' && sameAsRetailerAddress == 'true'){
439
			shopObject['address'] = null;
440
		}else{
441
			shopObject['address'] = getShopAddressObject(i);
442
		}
443
		retailerDetailsObject['shops'].push(shopObject);
444
 
445
	}
446
 
447
	return JSON.stringify(retailerDetailsObject);
448
}
449
 
450
function getShopAddressObject(counter){
451
	var shopAddressObject = {};
452
	shopAddressObject['name'] = $("form#update-retailer-details-form input[name=shopAddressName"+counter+"]").val();
453
	shopAddressObject['line1'] = $("form#update-retailer-details-form input[name=shopAddressLine1"+counter+"]").val();
454
	shopAddressObject['line2'] = $("form#update-retailer-details-form input[name=shopAddressLine2"+counter+"]").val();
455
	shopAddressObject['city'] = $("form#update-retailer-details-form input[name=shopAddressCity"+counter+"]").val();
456
	shopAddressObject['pinCode'] = $("form#update-retailer-details-form input[name=shopAddressPinCode"+counter+"]").val();
457
	shopAddressObject['state'] = $("#shopAddressState"+counter+" option:selected").val();
458
	return shopAddressObject;
459
}