Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
7272 amit.gupta 1
$(function(){
2
	$('#dth-image').click(function(){
3
		trackEventWithGA('Recharge', 'Recharge Type', 'DTH');
4
		$('#serviceType').val('2');
5
		$('#serviceSelectForm').submit();
6
	});
7
	$('#phone-image').click(function(){
8
		trackEventWithGA('Recharge', 'Recharge Type', 'Mobile');
9
		$('#serviceType').val('1');
10
		$('#serviceSelectForm').submit();
11
	});
12
 
13
	jQuery('#planDropDown').change(function() {
14
		jQuery('#planDescription').html(jQuery('#planDropDown option:selected').attr('desc'));
15
	});
16
 
17
	jQuery('.showDenomination').live("click", function() {
18
		var denominationType = jQuery(this).attr('denominationType');
19
		var operatorId = jQuery('#operatorSelector option:selected').val();
20
		var circleCode = jQuery('#circleCode').val();
21
		jQuery('#popularPlansInner').empty();
22
		$('#popularPlansInner').append('<div style="padding-top:90px;" align="center" class="img"><img title="loading" alt="loading" src="/images/loading.gif"></div>');
23
		jQuery('#popularPlansDiv').show();
24
		jQuery.ajax({
25
        	type : "GET",
26
        	url : "/recharge!getAllDenominations?operatorId=" + operatorId + "&circleCode=" + circleCode + "&denominationType=" + denominationType,
27
        	success : function(response) {
28
        		jQuery('#popularPlansInner').empty();
29
            	jQuery('#popularPlansInner').html(response);
30
        	},
31
			error : function() {
32
				jQuery('#popularPlansInner').empty();
33
				jQuery('#popularPlansInner').html("<div style='padding:15px;'>This information is unavailable for now.<br>You can recharge with the amount you normally use or you can try later.</div>");
34
			}
35
		});				
36
	});
37
 
38
	jQuery('.populateAmount').live("click", function() {
39
		jQuery('#amountInput').val(jQuery(this).text());
40
		jQuery('#popularPlansDiv').hide();
41
	});
42
 
43
	jQuery('#closePlans').click(function() {
44
		jQuery('#popularPlansDiv').hide();
45
	});
46
 
47
	$.validator.addMethod("rangeamount", function(value,element){	
48
		return value >= 10 && value <= 1000;
49
	}, "Recharge amount should be between Rs. 10-1000");
50
 
51
	$.validator.addMethod("rangeamount1", function(value,element){	
52
		return value >= 200 && value <= 2000;
53
	}, "Recharge amount should be between Rs. 200-2000");
54
 
55
 
56
	$.validator.addMethod("dishtv", function(value,element){	
57
		if (jQuery('#operatorSelector').val()!=1){
58
			return true;
59
		} else {
60
			return value >= 250 && value <= 2000;
61
		}
62
	}, "Recharge amount should be between Rs. 250-2000");
63
 
64
	$.validator.addMethod("selectoperator", function(value,element){	
65
		return $(element).find("option:selected").index()!=0;
66
	}, "Please select operator");
67
 
68
	$('#atmSelection').validate({
69
		rules:{
70
			name:{
71
				required:true
72
			},
73
			line1:{
74
				required:true
75
			},
76
			state:{
77
				required:true
78
			},
79
			city:{
80
				required:true
81
			},
82
			pincode:{
83
				required:true,
84
				digits:true
85
			},
86
			phone:{
87
				required:true,
88
				minlength:10,
89
				digits:true
90
			},
91
		},
92
		messages:{
93
			name:{
94
				required:"Please enter the name"
95
			},
96
			line1:{
97
				required:"Please enter the address"
98
			},
99
			state:{
100
				required: "Please select a state"
101
			},
102
			city:{
103
				required: "Please enter the city"
104
			},
105
			pincode:{
106
				required: "Please enter the pincode",
107
				digits:"Please enter a valid pincode"
108
			},
109
			phone:{
110
				required: "Please enter the phone number",
111
				digits:"Please enter a valid number",
112
				minlength:"Number should be of 10 digits"
113
			}
114
		}
115
	});
116
 
117
	$('#ccSelection').validate({
118
		rules:{
119
			name:{
120
				required:true
121
			},
122
			line1:{
123
				required:true
124
			},
125
			state:{
126
				required:true
127
			},
128
			city:{
129
				required:true
130
			},
131
			pincode:{
132
				required:true,
133
				digits:true
134
			},
135
			phone:{
136
				required:true,
137
				minlength:10,
138
				digits:true
139
			},
140
		},
141
		messages:{
142
			name:{
143
				required:"Please enter the name"
144
			},
145
			line1:{
146
				required:"Please enter the address"
147
			},
148
			state:{
149
				required: "Please select a state"
150
			},
151
			city:{
152
				required: "Please enter the city"
153
			},
154
			pincode:{
155
				required: "Please enter the pincode",
156
				digits:"Please enter a valid pincode"
157
			},
158
			phone:{
159
				required: "Please enter the phone number",
160
				digits:"Please enter a valid number",
161
				minlength:"Number should be of 10 digits"
162
			}
163
		}
164
	});
165
 
166
	$('#bankSelection').validate({
167
		rules:{
168
			name:{
169
				required:true
170
			},
171
			line1:{
172
				required:true
173
			},
174
			state:{
175
				required:true
176
			},
177
			city:{
178
				required:true
179
			},
180
			pincode:{
181
				required:true,
182
				digits:true
183
			},
184
			phone:{
185
				required:true,
186
				minlength:10,
187
				digits:true
188
			},
189
		},
190
		messages:{
191
			name:{
192
				required:"Please enter the name"
193
			},
194
			line1:{
195
				required:"Please enter the address"
196
			},
197
			state:{
198
				required: "Please select a state"
199
			},
200
			city:{
201
				required: "Please enter the city"
202
			},
203
			pincode:{
204
				required: "Please enter the pincode",
205
				digits:"Please enter a valid pincode"
206
			},
207
			phone:{
208
				required: "Please enter the phone number",
209
				digits:"Please enter a valid number",
210
				minlength:"Number should be of 10 digits"
211
			}
212
		}
213
	});
214
 
215
	rechargeFormValidator = $('#rechargeDetailsForm').validate({
216
		rules:{
217
			number:{
218
				required:true,
219
				minlength:10,
220
				digits:true
221
			},
222
			dthnumber:{
223
				required:true
224
			},
225
			amount:{
226
				required:true,
227
				digits:true,
228
				rangeamount:true
229
			},
230
			dthamount:{
231
				required:true,
232
				digits:true,
233
				dishtv:true,
234
				rangeamount1:true
235
			},
236
			email:{
237
				required:true,
238
				email:true
239
			},
240
			operator:{
241
				selectoperator:true
242
			}
243
		},
244
		messages:{
245
			number:{
246
				required:"Please enter the mobile number",
247
				digits:"Please enter a valid number",
248
				minlength:"Number should be of 10 digits"
249
			},
250
			dthnumber:{
251
				required:"Please enter the DTH number"
252
			},
253
			amount:{
254
				required: "Please enter amount",
255
				digits: "Recharge amount should be between Rs. 10-1000",
256
				rangeamount:"Recharge amount should be between Rs. 10-1000"
257
			},
258
			dthamount:{
259
				required: "Please enter amount",
260
				digits: "Recharge amount should be between Rs. 200-2000"
261
			},
262
			operator:{
263
				selectoperator:"Please select operator"
264
			}
265
 
266
		}
267
	});
268
 
269
	oldValue = "";
270
	$('#rechargeDetailsForm input[name="number"]').unbind('keyup blur').bind('keyup blur', function(){
271
		var numvalue = $(this).val().substring(0,4);
272
		var count = $(this).val().length;
273
		if(count==10 && oldValue != numvalue){
274
			getRechargeProvider(numvalue, 1);
275
			oldValue = numvalue; 
276
			//$(this).unbind('keyup');
277
		}
278
	});
279
 
280
	function getRechargeProvider(deviceNumber, rechargeType){
281
		return $.ajax({
282
			type: "POST",
283
			url: "/recharge!getServiceProvider?deviceNumber=" + deviceNumber + "&serviceType=" + rechargeType,
284
			success:function(msg){
285
				if(msg != ""){
286
					var deviceNumberInfo = msg.split(":");
287
					$('#rechargeDetailsForm select[name="operator"]').val($.trim(deviceNumberInfo[0]));
288
					$('#circleCode').val($.trim(deviceNumberInfo[1]));
289
					$('#operatorSelector').trigger('change');
290
				}
291
			}
292
		});
293
	}
294
 
295
	jQuery('#applyRechargeCoupon').click(function() {
296
		var code = $.trim($('#discountCode').val());
297
		if ( code == '') {
298
			alert('No coupon applied');
299
		} else {
300
			$('#discountCode').val(code);
301
			jQuery('#create-recharge-form').attr('action', '/confirm!applyRechargeCoupon');
302
			jQuery('#create-recharge-form').submit();
303
		}
304
	});
305
 
306
	jQuery('#recharge-pay-now-button').click(function() {
307
		jQuery('#create-recharge-form').attr('action', '/confirm!createRecharge');
308
		jQuery('#create-recharge-form').submit();
309
	});
310
 
311
	jQuery('#recharge-now-button').click(function() {
312
		jQuery('#recharge-now-button').hide();
313
		var formName = "create-recharge-form";
314
		var captcha_response_input = jQuery("form[name='" + formName + "'] :input[name='captcha_response_field']");
315
    	var entered_text =  jQuery.trim(captcha_response_input.val());
316
        	if(entered_text == '' || entered_text == 'Enter the characters shown'){
317
        		dispError("Please enter the characters shown.");
318
        		captcha_response_input.blur();
319
				jQuery('#recharge-now-button').show();
320
				return;
321
        	}
322
		jQuery('#create-recharge-form').attr('action', '/confirm!createRecharge');
323
		jQuery('#captcha-div').append('<span id=\'recharge-loading\' style="display:inline-block;width:200px;height: 30px;background: url(\'/images/loading.gif\') no-repeat 8px 0;padding-left: 45px;padding-top: 7px;">Please Wait ...</span>');
324
    	jQuery('#create-recharge-form').submit();
325
	});
326
 
327
    function dispError(msg) {
328
    	alert(msg);
329
    }
330
 
331
	jQuery('#captchaanchor').click(function () { jQuery('#captchaImage').attr('src', '/captcha?rand=' + Math.floor(Math.random()*100) ); });
332
 
333
	jQuery('#captcha_response_box').val('Enter the characters shown')
334
	.focus(function(){
335
		if ($(this).val() == 'Enter the characters shown') {
336
			$(this).val('');
337
			$(this).removeClass('captcha_text_blur');
338
			$(this).addClass('captcha_text_focus');
339
		}
340
	})
341
	.blur(function(){
342
		if ($(this).val() == '') {
343
			$(this).val('Enter the characters shown');
344
			$(this).removeClass('captcha_text_focus');
345
			$(this).addClass('captcha_text_blur');
346
		}
347
	});
348
});
349