Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
1464 varun.gupt 1
$(function(){
1471 varun.gupt 2
	var utils = {
3
			resetProductSelector: function()	{
4
				$('#product').html('<option value="-1">Select Product</option>').attr('disabled', 'true');
5
			},
6
			resetForm: function()	{
7
				$('#communication_category').val("-1");
8
				$('#orderComponent, #awbComponent, #productComponent, #subjectComponent, #msgComponent').hide();
9
				this.resetProductSelector();
10
				$('#submit').attr('disabled', 'disabled');
11
				$('#resetFormButton').attr('disabled', 'disabled');
12
			},
13
			activateResetButton: function() {
14
				$('#resetFormButton').removeAttr('disabled');
15
			}
16
	};
17
 
18
	$('#resetFormButton').click(function() {
19
		utils.resetForm();
20
	});
21
 
1464 varun.gupt 22
	$('#communication_category').change(function(){
23
		$('#orderComponent, #awbComponent, #productComponent, #subjectComponent, #msgComponent').hide();
24
		$('#frmContactUs input[name="submit"]').removeAttr('disabled');
1471 varun.gupt 25
		utils.resetProductSelector();
1464 varun.gupt 26
 
27
		switch(parseInt($(this).val()))	{
28
 
29
			case 1:
30
				$('#orderComponent, #productComponent, #subjectComponent, #msgComponent').show();
31
				$('#lblSubject').html('Reason');
32
				$('#reason_to_return').attr('name', 'subject').show();
33
				$('#delivery_problem, #subject').removeAttr('name').hide();
34
 
35
				jQuery.ajax({
36
					type: "GET",
37
					url: "/contact-us/to_return",
38
					success: function(data)	{
1481 varun.gupt 39
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
40
							alert("You don't hany any completed orders.");
41
							utils.resetForm();
42
						}
43
						else	{
44
							$("#order_id").html(data);
45
						}
1464 varun.gupt 46
					}
47
				});
48
				lastQueryType = 1;
1471 varun.gupt 49
				utils.activateResetButton();
1464 varun.gupt 50
				break;
51
 
52
			case 2:
53
				$('#orderComponent, #subjectComponent, #msgComponent').show();
54
				$('#lblSubject').html('Reason');
55
				$('#subject').attr('name', 'subject').show();
56
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
57
 
58
				jQuery.ajax({
59
					type: "GET",
60
					url: "/contact-us/to_cancel",
61
					success: function(data)	{
1481 varun.gupt 62
						if($.trim(data) == "<option value='-1'>No Orders Found</option>")	{
63
							alert("You don't hany any completed orders.");
64
							utils.resetForm();
65
						}
66
						else	{
67
							$("#order_id").html(data);
68
						}
1464 varun.gupt 69
					}
70
				});
71
				lastQueryType = 2;
1471 varun.gupt 72
				utils.activateResetButton();
1464 varun.gupt 73
				break;
74
 
75
			case 3:
76
				$('#orderComponent, #subjectComponent, #msgComponent').show();
77
				$('#lblSubject').html('Problem Type');
78
				$('#delivery_problem').attr('name', 'subject').show();
79
				$('#reason_to_return, #subject').removeAttr('name').hide();
80
				checkAndUpdateOrderSelector();
81
				lastQueryType = 3;
1471 varun.gupt 82
				utils.activateResetButton();
1464 varun.gupt 83
				break;
84
 
85
			case 4:
86
				$('#orderComponent, #msgComponent').show();
87
				checkAndUpdateOrderSelector();
88
				lastQueryType = 4;
1471 varun.gupt 89
				utils.activateResetButton();
1464 varun.gupt 90
				break;
91
 
92
			case 5:
93
				$('#orderComponent, #msgComponent').show();
94
				checkAndUpdateOrderSelector();
95
				lastQueryType = 5;
1471 varun.gupt 96
				utils.activateResetButton();
1464 varun.gupt 97
				break;
98
 
99
			case 6:
100
				$('#subjectComponent, #msgComponent').show();
101
				$('#lblSubject').html('Product Title');
102
				$('#subject').attr('name', 'subject').show();
103
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
104
				checkAndUpdateOrderSelector();
105
				lastQueryType = 6;
1471 varun.gupt 106
				utils.activateResetButton();
1464 varun.gupt 107
				break;
108
 
109
			case 7:
110
				$('#subjectComponent, #msgComponent').show();
111
				$('#lblSubject').html('Subject');
112
				$('#subject').attr('name', 'subject').show();
113
				$('#delivery_problem, #reason_to_return').removeAttr('name').hide();
114
				checkAndUpdateOrderSelector();
115
				lastQueryType = 7;
1471 varun.gupt 116
				utils.activateResetButton();
1464 varun.gupt 117
				break;
118
 
119
			default:
1471 varun.gupt 120
				utils.resetForm();
1464 varun.gupt 121
				break;
122
		}
123
	});
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
 
136
	$('#order_id').change(function(){
137
		var orderId = parseInt($(this).val());
138
 
139
		if(isNaN(orderId))	{
140
			alert("Order Id must be an integer");
141
		} else	{
142
			jQuery.ajax({
143
				type: "GET",
144
				url: "/contact-us/" + orderId + "",
145
				success: function(data)	{
146
					$("#product").removeAttr('disabled').html(data);
147
				}
148
			});
149
		}
150
	});
151
 
152
	$('form[name="frmContactUs"]').validate({
153
		rules: {
154
			email: {
155
				required: true,
156
				email: true
157
			},
158
			order_id: {
159
				required: true,
160
				digits: true
161
			}
162
		}
163
	});
164
});