Subversion Repositories SmartDukaan

Rev

Rev 1481 | Rev 1582 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1481 Rev 1580
Line 1... Line 1...
1
$(function(){
1
$(function(){
2
	var utils = {
2
	var utils = {
-
 
3
			lastQueryType: -1,
-
 
4
			
-
 
5
			orderIdSelector: null,
-
 
6
 
3
			resetProductSelector: function()	{
7
			resetProductSelector: function()	{
4
				$('#product').html('<option value="-1">Select Product</option>').attr('disabled', 'true');
8
				$('#product').html('<option value="-1">Select Product</option>').attr('disabled', 'true');
5
			},
9
			},
6
			resetForm: function()	{
10
			resetForm: function()	{
7
				$('#communication_category').val("-1");
11
				$('#communication_category').val("-1");
Line 10... Line 14...
10
				$('#submit').attr('disabled', 'disabled');
14
				$('#submit').attr('disabled', 'disabled');
11
				$('#resetFormButton').attr('disabled', 'disabled');
15
				$('#resetFormButton').attr('disabled', 'disabled');
12
			},
16
			},
13
			activateResetButton: function() {
17
			activateResetButton: function() {
14
				$('#resetFormButton').removeAttr('disabled');
18
				$('#resetFormButton').removeAttr('disabled');
-
 
19
			},
-
 
20
			checkAndUpdateOrderSelector: function()	{
-
 
21
				if (this.lastQueryType == 1 || this.lastQueryType == 2)	{
-
 
22
					jQuery.ajax({
-
 
23
						type: "GET",
-
 
24
						url: "/contact-us/all_orders",
-
 
25
						success: function(data)	{
-
 
26
							console.log('allOrders', data);
-
 
27
							$("#order_id").html(data);
-
 
28
						}
-
 
29
					});
-
 
30
				}
-
 
31
			},
-
 
32
			removeOrderIdSelector: function()	{
-
 
33
				var orderIdSelector = $('#order_id');
-
 
34
				this.orderIdSelector = $(orderIdSelector).clone(true);
-
 
35
				$(orderIdSelector).remove();
-
 
36
			},
-
 
37
			addOrderIdSelector: function()	{
-
 
38
				$(this.orderIdSelector).appendTo('#orderComponent');
-
 
39
				this.orderIdSelector = null;
15
			}
40
			}
16
	};
41
	};
17
	
42
	
18
	$('#resetFormButton').click(function() {
43
	$('#resetFormButton').click(function() {
19
		utils.resetForm();
44
		utils.resetForm();
20
	});
45
	});
21
	
46
	
-
 
47
	
22
	$('#communication_category').change(function(){
48
	$('#communication_category').change(function(){
23
		$('#orderComponent, #awbComponent, #productComponent, #subjectComponent, #msgComponent').hide();
49
		$('#orderComponent, #awbComponent, #productComponent, #subjectComponent, #msgComponent').hide();
24
		$('#frmContactUs input[name="submit"]').removeAttr('disabled');
50
		$('#frmContactUs input[name="submit"]').removeAttr('disabled');
25
		utils.resetProductSelector();
51
		utils.resetProductSelector();
-
 
52
		utils.activateResetButton();
-
 
53
		
-
 
54
		console.log(utils.orderIdSelector);
26
		
55
		
27
		switch(parseInt($(this).val()))	{
56
		switch(parseInt($(this).val()))	{
28
 
57
 
29
			case 1:
58
			case 1:
30
				$('#orderComponent, #productComponent, #subjectComponent, #msgComponent').show();
59
				$('#orderComponent, #productComponent, #subjectComponent, #msgComponent').show();
31
				$('#lblSubject').html('Reason');
60
				$('#lblSubject').html('Reason');
32
				$('#reason_to_return').attr('name', 'subject').show();
61
				$('#reason_to_return').attr('name', 'subject').show();
33
				$('#delivery_problem, #subject').removeAttr('name').hide();
62
				$('#delivery_problem, #subject').removeAttr('name').hide();
34
				
63
				
-
 
64
				if(utils.orderIdSelector)	utils.addOrderIdSelector();
-
 
65
				
35
				jQuery.ajax({
66
				jQuery.ajax({
36
					type: "GET",
67
					type: "GET",
37
					url: "/contact-us/to_return",
68
					url: "/contact-us/to_return",
38
					success: function(data)	{
69
					success: function(data)	{
-
 
70
						console.log('returnableOrders', data);
39
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
71
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
40
							alert("You don't hany any completed orders.");
72
							alert("You don't hany any completed orders.");
41
							utils.resetForm();
73
							utils.resetForm();
42
						}
74
						}
43
						else	{
75
						else	{
44
							$("#order_id").html(data);
76
							$("#order_id").html(data);
45
						}
77
						}
46
					}
78
					}
47
				});
79
				});
48
				lastQueryType = 1;
80
				utils.lastQueryType = 1;
49
				utils.activateResetButton();
-
 
50
				break;
81
				break;
51
 
82
 
52
			case 2:
83
			case 2:
53
				$('#orderComponent, #subjectComponent, #msgComponent').show();
84
				$('#orderComponent, #subjectComponent, #msgComponent').show();
54
				$('#lblSubject').html('Reason');
85
				$('#lblSubject').html('Reason');
55
				$('#subject').attr('name', 'subject').show();
86
				$('#subject').attr('name', 'subject').show();
56
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
87
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
57
				
88
				
-
 
89
				if(utils.orderIdSelector)	utils.addOrderIdSelector();
-
 
90
				
58
				jQuery.ajax({
91
				jQuery.ajax({
59
					type: "GET",
92
					type: "GET",
60
					url: "/contact-us/to_cancel",
93
					url: "/contact-us/to_cancel",
61
					success: function(data)	{
94
					success: function(data)	{
-
 
95
						console.log('cancellableOrders', data);
62
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
96
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
63
							alert("You don't hany any completed orders.");
97
							alert("You don't hany any completed orders.");
64
							utils.resetForm();
98
							utils.resetForm();
65
						}
99
						}
66
						else	{
100
						else	{
67
							$("#order_id").html(data);
101
							$("#order_id").html(data);
68
						}
102
						}
69
					}
103
					}
70
				});
104
				});
71
				lastQueryType = 2;
105
				utils.lastQueryType = 2;
72
				utils.activateResetButton();
-
 
73
				break;
106
				break;
74
 
107
 
75
			case 3:
108
			case 3:
76
				$('#orderComponent, #subjectComponent, #msgComponent').show();
109
				$('#orderComponent, #subjectComponent, #msgComponent').show();
77
				$('#lblSubject').html('Problem Type');
110
				$('#lblSubject').html('Problem Type');
78
				$('#delivery_problem').attr('name', 'subject').show();
111
				$('#delivery_problem').attr('name', 'subject').show();
79
				$('#reason_to_return, #subject').removeAttr('name').hide();
112
				$('#reason_to_return, #subject').removeAttr('name').hide();
-
 
113
 
-
 
114
				if(utils.orderIdSelector)	utils.addOrderIdSelector();
80
				checkAndUpdateOrderSelector();
115
				utils.checkAndUpdateOrderSelector();
81
				lastQueryType = 3;
116
				utils.lastQueryType = 3;
82
				utils.activateResetButton();
-
 
83
				break;
117
				break;
84
 
118
 
85
			case 4:
119
			case 4:
86
				$('#orderComponent, #msgComponent').show();
120
				$('#orderComponent, #msgComponent').show();
-
 
121
 
-
 
122
				if(utils.orderIdSelector)	utils.addOrderIdSelector();
87
				checkAndUpdateOrderSelector();
123
				utils.checkAndUpdateOrderSelector();
88
				lastQueryType = 4;
124
				utils.lastQueryType = 4;
89
				utils.activateResetButton();
-
 
90
				break;
125
				break;
91
 
126
 
92
			case 5:
127
			case 5:
93
				$('#orderComponent, #msgComponent').show();
128
				$('#orderComponent, #msgComponent').show();
-
 
129
				if(utils.orderIdSelector)	utils.addOrderIdSelector();
-
 
130
				
94
				checkAndUpdateOrderSelector();
131
				utils.checkAndUpdateOrderSelector();
95
				lastQueryType = 5;
132
				utils.lastQueryType = 5;
96
				utils.activateResetButton();
-
 
97
				break;
133
				break;
98
 
134
 
99
			case 6:
135
			case 6:
100
				$('#subjectComponent, #msgComponent').show();
136
				$('#subjectComponent, #msgComponent').show();
101
				$('#lblSubject').html('Product Title');
137
				$('#lblSubject').html('Product Title');
102
				$('#subject').attr('name', 'subject').show();
138
				$('#subject').attr('name', 'subject').show();
103
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
139
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
104
				checkAndUpdateOrderSelector();
140
				utils.checkAndUpdateOrderSelector();
105
				lastQueryType = 6;
141
				utils.removeOrderIdSelector();
106
				utils.activateResetButton();
142
				utils.lastQueryType = 6;
107
				break;
143
				break;
108
 
144
 
109
			case 7:
145
			case 7:
110
				$('#subjectComponent, #msgComponent').show();
146
				$('#subjectComponent, #msgComponent').show();
111
				$('#lblSubject').html('Subject');
147
				$('#lblSubject').html('Subject');
112
				$('#subject').attr('name', 'subject').show();
148
				$('#subject').attr('name', 'subject').show();
113
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
149
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
114
				checkAndUpdateOrderSelector();
150
				utils.checkAndUpdateOrderSelector();
115
				lastQueryType = 7;
151
				utils.removeOrderIdSelector();
116
				utils.activateResetButton();
152
				utils.lastQueryType = 7;
117
				break;
153
				break;
118
 
154
 
119
			default:
155
			default:
120
				utils.resetForm();
156
				utils.resetForm();
121
				break;
157
				break;
122
		}
158
		}
123
	});
159
	});
124
	function checkAndUpdateOrderSelector()	{
-
 
125
		if (lastQueryType == 1 || lastQueryType == 2)	{
-
 
126
			jQuery.ajax({
-
 
127
				type: "GET",
-
 
128
				url: "/contact-us/all_orders",
-
 
129
				success: function(data)	{
-
 
130
					$("#order_id").html(data);
-
 
131
				}
-
 
132
			});
-
 
133
		}
-
 
134
	}
-
 
135
	
160
	
136
	$('#order_id').change(function(){
161
	$('#order_id').change(function(){
137
		var orderId = parseInt($(this).val());
162
		var orderId = parseInt($(this).val());
138
 
163
 
139
		if(isNaN(orderId))	{
164
		if(isNaN(orderId))	{
Line 156... Line 181...
156
				email: true
181
				email: true
157
			},
182
			},
158
			order_id: {
183
			order_id: {
159
				required: true,
184
				required: true,
160
				digits: true
185
				digits: true
-
 
186
/*				required: {
-
 
187
					depends: function()	{
-
 
188
						return $('#orderComponent:visible');
-
 
189
					}
-
 
190
				},
-
 
191
				digits: {
-
 
192
					depends: function()	{
-
 
193
						return $('#orderComponent:visible');
-
 
194
					}
-
 
195
				}*/
-
 
196
			}
-
 
197
		},
-
 
198
		messages: {
-
 
199
			order_id: {
-
 
200
				digits: "Order ID must be a valid number"
161
			}
201
			}
162
		}
202
		}
163
	});
203
	});
164
});
204
});
165
205