Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
30084 amit.gupta 1
function createSchemeOnReady() {
2
	$("form#create-scheme-form input").each(function () {
22860 ashik.ali 3
		$(this).attr('autocomplete', 'off');
4
	});
30084 amit.gupta 5
	// validate the comment form when it is submitted
6
	$('#create-scheme-form').validate({
7
		rules: {
8
			schemeName: {
9
				required: true
22860 ashik.ali 10
			},
30084 amit.gupta 11
			schemeType: {
12
				required: true
22860 ashik.ali 13
			},
30084 amit.gupta 14
			amountType: {
22860 ashik.ali 15
				required:true
16
			},
17
			schemeAmount:{
18
				required:true
19
			},
20
			startDate:{
21
				required:true
22
			},
23
			endDate:{
24
				required:true
25
			},
23026 ashik.ali 26
			itemIdsDescription:{
22860 ashik.ali 27
				required:true
28
			},
29
			retailerIds:{
30
				required:true
31
			}
32
		},
33
		messages:{
34
			name:{
35
				required:"Please enter the name"
36
			},
37
			schemeType:{
38
				required:"Please choose type"
39
			},
40
			amountType:{
41
				required: "Please choose amount type"
42
			},
43
			schemeAmount:{
44
				required: "Please enter the amount"
45
			},
46
			startDate:{
47
				require: "Please choose start date"
48
			},
49
			endDate:{
50
				require: "Please choose end date"
51
			},
23026 ashik.ali 52
			itemIdsDescription:{
53
				required: "Please choose items"
22860 ashik.ali 54
			},
55
			retailerIds:{
56
				required: "Please enter retailer ids"
57
			}
58
		},
59
		submitHandler: function (form, event) {
60
			event.preventDefault();
61
			if(validateSchemeDetails()){
62
				alert("Please fix errors");
63
				return false;
64
			}
30148 amit.gupta 65
			let json = schemeDetailsJson();
22860 ashik.ali 66
			console.log("schemeJson = " + json);
67
			if(confirm("Are you sure you want to create Scheme!") == true){
23528 ashik.ali 68
				doPostAjaxRequestWithJsonHandler(context+"/createScheme", json, function(response){
23419 ashik.ali 69
					$('#main-content').html(response);
70
				});
22860 ashik.ali 71
	             return false; // required to block normal submit since you used ajax
72
			}
73
         }
74
	});
75
 
30084 amit.gupta 76
}
23347 ashik.ali 77
 
30084 amit.gupta 78
 
23347 ashik.ali 79
$('#retailerAll').on('change', function() {
80
    if (this.checked) {
81
    	$('#retailerAll').val('true');
82
    	$('#retailer-ids').html('');
83
    }else{
84
    	$('#retailerAll').val('false');
85
    	$('#retailer-ids').html('<input placeholder="Retailer Ids" id="retailerIds" name="retailerIds" type="text" value="" pattern="^[0-9]{1,10}(?:,[0-9]{1,10})*$" title="Comma Seperated Positive Integer Retailer Ids" class="form-control input-sm">');
86
    }
87
});
88
 
89
 
23343 ashik.ali 90
function validateSchemeDetails(){
91
	console.log("validating Scheme Details...");
92
	var error = false;
93
	var name = $("form#create-scheme-form input[name=schemeName]").val();
94
	console.log("schemeName = " + name);
95
	$("#schemeName").removeClass("border-highlight");
96
	if(name ==""){
97
		alert("Name is required");
98
		$("#schemeName").addClass("border-highlight");
99
		error = true;
100
		return error;
101
	}
102
	var schemeType = $("#schemeType option:selected").val();
103
	console.log("schemeType = " + schemeType);
104
	$("#schemeType").removeClass("border-highlight");
105
	if(schemeType == ""){
106
		alert("Please choose Scheme Type");
107
		$("#schemeType").addClass("border-highlight");
108
		error = true;
109
		return error;
110
	}
111
	var amountType = $("#amountType option:selected").val();
112
	console.log("amountType = " + amountType);
113
	$("#amountType").removeClass("border-highlight");
114
	if(amountType == ""){
115
		alert("Please choose Amount Type");
116
		$("#amountType").addClass("border-highlight");
117
		error = true;
118
		return error;
119
	}
120
	var amount = $("form#create-scheme-form input[name=schemeAmount]").val();
121
	console.log("amount = " + amount);
122
	$("#schemeAmount").removeClass("border-highlight");
123
	if (amount == ""){
124
		$("form#create-scheme-form input[name=schemeAmount]").val(0);
125
	}else if(amount <= 0){
126
		alert("Amount should be greater than 0");
127
		$("#schemeAmount").addClass("border-highlight");
128
		error = true;
129
		return error;
130
	}
30148 amit.gupta 131
 
132
 
23343 ashik.ali 133
	//$('#brand-value').text($(this).text());
23419 ashik.ali 134
	$("#tag-listing-brand-value").removeClass("border-highlight");
30148 amit.gupta 135
	if ($("#tag-listing-brand-value").text() == "Brands") {
23343 ashik.ali 136
		alert("Please choose Brand");
23419 ashik.ali 137
		$("#tag-listing-brand-value").addClass("border-highlight");
23343 ashik.ali 138
		error = true;
139
		return error;
140
	}
30148 amit.gupta 141
 
142
	$("select.catalogItemsDescription").removeClass("border-hightlight");
143
	var itemIdsString = $("select.catalogItemsDescription").val();
27805 amit.gupta 144
	debugger;
30148 amit.gupta 145
	if (itemIdsString == null) {
23343 ashik.ali 146
		alert("Please choose items");
30148 amit.gupta 147
		$("select.catalogItemsDescription").addClass("border-highlight");
23343 ashik.ali 148
		error = true;
149
		return error;
150
	}
30148 amit.gupta 151
 
23343 ashik.ali 152
	console.log("validation scheme error = " + error);
153
	return error;
154
}
155
 
156
function schemeDetailsJson(){
157
	var schemeObject = {};
158
	schemeObject['name'] = $("form#create-scheme-form input[name=schemeName]").val();
159
	schemeObject['description'] = $("form#create-scheme-form input[name=description]").val();
160
	schemeObject['type'] = $("#schemeType option:selected").val();
161
	schemeObject['amountType'] = $("#amountType option:selected").val();
162
	schemeObject['amount'] = $('#schemeAmount').val();
25505 amit.gupta 163
	schemeObject['partnerType'] = $('#retailerType').val();
26680 amit.gupta 164
	schemeObject['cashback'] = $("#cashbackScheme").is(":checked")
30076 amit.gupta 165
	schemeObject['startDate'] = $("#schemeDuration").data('daterangepicker').startDate.format(moment.HTML5_FMT.DATETIME_LOCAL_SECONDS);
166
	schemeObject['endDate'] = $("#schemeDuration").data('daterangepicker').endDate.format(moment.HTML5_FMT.DATETIME_LOCAL_SECONDS);
30148 amit.gupta 167
	schemeObject['catalogIds'] = [];
168
	schemeObject['catalogIds'] = $("select.catalogItemsDescription").val();
23343 ashik.ali 169
	return JSON.stringify(schemeObject);
170
}