| 35360 |
aman |
1 |
function loadPendingTrialForms(domId) {
|
|
|
2 |
doGetAjaxRequestHandler(context + "/trial/pending", function (response) {
|
|
|
3 |
$('#' + domId).html(response);
|
|
|
4 |
});
|
|
|
5 |
}
|
|
|
6 |
|
| 35289 |
amit |
7 |
$(function () {
|
|
|
8 |
$(document).on('click', ".trial_users", function () {
|
|
|
9 |
loadPendingTrialForms("main-content");
|
|
|
10 |
});
|
| 35340 |
aman |
11 |
$(document).on('click', ".verified_trial_users", function () {
|
|
|
12 |
loadVerifiedTrialForms("main-content");
|
|
|
13 |
});
|
| 29598 |
tejbeer |
14 |
|
| 35289 |
amit |
15 |
$(document).on('click', ".mk_trial_create", function () {
|
| 35360 |
aman |
16 |
let trialFormId = $(this).closest('tr').data('id');
|
| 35289 |
amit |
17 |
});
|
| 30439 |
tejbeer |
18 |
|
| 35289 |
amit |
19 |
$(document).on('click', ".mk_trial_cancel", function () {
|
| 35360 |
aman |
20 |
let trialFormId = $(this).closest('tr').data('id');
|
| 35289 |
amit |
21 |
cancelTrialForm(trialFormId);
|
|
|
22 |
});
|
| 35360 |
aman |
23 |
$(document).on('click', ".approve-trial", function () {
|
|
|
24 |
let trialFormId = $(this).closest('tr').data('id');
|
|
|
25 |
approveTrialForm(trialFormId);
|
|
|
26 |
});
|
|
|
27 |
$(document).on('click', ".converted", function () {
|
|
|
28 |
let trialFormId = $(this).closest('tr').data('id');
|
|
|
29 |
convertedToFranchise(trialFormId);
|
|
|
30 |
});
|
| 30439 |
tejbeer |
31 |
|
| 29598 |
tejbeer |
32 |
|
| 35340 |
aman |
33 |
function loadVerifiedTrialForms(domId) {
|
|
|
34 |
doGetAjaxRequestHandler(context + "/trial/verified", function (response) {
|
|
|
35 |
$('#' + domId).html(response);
|
|
|
36 |
});
|
|
|
37 |
}
|
|
|
38 |
|
| 35289 |
amit |
39 |
function trialCreate(trialFormId) {
|
|
|
40 |
doAjaxRequestHandler(`${context}/trial/create/${trialFormId}`, "GET", function (response) {
|
|
|
41 |
$('#main-content').html(response);
|
|
|
42 |
});
|
|
|
43 |
}
|
| 30439 |
tejbeer |
44 |
|
| 35289 |
amit |
45 |
function cancelTrialForm(trialFormId) {
|
|
|
46 |
if (confirm("Are you sure you want to cancel this trial?")) {
|
| 35340 |
aman |
47 |
doPostAjaxRequestHandler(`${context}/trial/cancel/${trialFormId}`, function (response) {
|
| 35289 |
amit |
48 |
if (response == "true") {
|
| 35360 |
aman |
49 |
$('.modal-backdrop').remove();
|
|
|
50 |
$('body').removeClass('modal-open');
|
|
|
51 |
$('body').css('padding-right', '');
|
| 35289 |
amit |
52 |
loadPendingTrialForms("main-content");
|
|
|
53 |
}
|
|
|
54 |
});
|
|
|
55 |
}
|
|
|
56 |
}
|
| 35360 |
aman |
57 |
|
|
|
58 |
function approveTrialForm(trialFormId) {
|
|
|
59 |
if (confirm("Are you sure you want to approve this trial?")) {
|
|
|
60 |
doPostAjaxRequestHandler(`${context}/trial/approve/${trialFormId}`, function (response) {
|
|
|
61 |
if (response == "true") {
|
|
|
62 |
$('.modal-backdrop').remove();
|
|
|
63 |
$('body').removeClass('modal-open');
|
|
|
64 |
$('body').css('padding-right', '');
|
|
|
65 |
loadVerifiedTrialForms("main-content");
|
|
|
66 |
}
|
|
|
67 |
});
|
|
|
68 |
}
|
|
|
69 |
}
|
|
|
70 |
|
|
|
71 |
function convertedToFranchise(trialFormId) {
|
|
|
72 |
if (confirm("Are you sure you want to mark as converted?")) {
|
|
|
73 |
doPostAjaxRequestHandler(`${context}/trial/convertToFranchise/${trialFormId}`, function (response) {
|
|
|
74 |
if (response == "true") {
|
|
|
75 |
$('.modal-backdrop').remove();
|
|
|
76 |
$('body').removeClass('modal-open');
|
|
|
77 |
$('body').css('padding-right', '');
|
|
|
78 |
loadVerifiedTrialForms("main-content");
|
|
|
79 |
}
|
|
|
80 |
});
|
|
|
81 |
}
|
|
|
82 |
}
|
| 25980 |
tejbeer |
83 |
});
|
| 35340 |
aman |
84 |
$(document).on('click', '.openBrandModal', function () {
|
|
|
85 |
let trialFormId = $(this).data('id');
|
|
|
86 |
console.log("trialFormId sent:", trialFormId);
|
|
|
87 |
$('#brandPotentialForm input[name="trialFormId"]').val(trialFormId);
|
|
|
88 |
});
|
| 35360 |
aman |
89 |
$(document).on('click', '.openUserBrandPotential', function () {
|
|
|
90 |
let trialFormId = $(this).data('id');
|
|
|
91 |
loadUserBrandPotential(trialFormId);
|
|
|
92 |
});
|
| 35340 |
aman |
93 |
|
|
|
94 |
|
|
|
95 |
function saveBrandPotential() {
|
|
|
96 |
|
|
|
97 |
let params = {};
|
|
|
98 |
|
|
|
99 |
params["trialFormId"] = $('#brandPotentialForm input[name="trialFormId"]').val();
|
|
|
100 |
|
|
|
101 |
let row = 1;
|
|
|
102 |
$('#brandPotentialRows tr').each(function () {
|
|
|
103 |
let brand = $(this).find('input[name="brand_' + row + '"]').val();
|
|
|
104 |
let potential = $(this).find('input[name="potential_' + row + '"]').val();
|
|
|
105 |
|
|
|
106 |
if (brand && potential) {
|
|
|
107 |
params["brand_" + row] = brand;
|
|
|
108 |
params["potential_" + row] = potential;
|
|
|
109 |
}
|
|
|
110 |
row++;
|
|
|
111 |
});
|
|
|
112 |
|
|
|
113 |
console.log("PARAMS SENT:", params);
|
|
|
114 |
|
|
|
115 |
doPostAjaxRequestWithParamsHandler(
|
|
|
116 |
context + "/trial/brand-Potential",
|
|
|
117 |
params,
|
|
|
118 |
function (response) {
|
| 35360 |
aman |
119 |
$('#brandPotentialModal').one('hidden.bs.modal', function () {
|
|
|
120 |
$('.modal-backdrop').remove();
|
|
|
121 |
$('body').removeClass('modal-open');
|
|
|
122 |
$('body').css('padding-right', '');
|
|
|
123 |
loadPendingTrialForms("main-content");
|
|
|
124 |
alert("Verified - Brand Potential Saved Successfully");
|
|
|
125 |
});
|
| 35340 |
aman |
126 |
$('#brandPotentialModal').modal('hide');
|
|
|
127 |
}
|
|
|
128 |
);
|
|
|
129 |
|
|
|
130 |
}
|
|
|
131 |
|
| 35360 |
aman |
132 |
function saveAsmBm() {
|
|
|
133 |
|
|
|
134 |
let params = {};
|
|
|
135 |
|
|
|
136 |
params["trialFormId"] = $('#brandPotentialForm input[name="trialFormId"]').val();
|
|
|
137 |
|
|
|
138 |
let abm = $('#asmBmForm select[name="asm"]').val();
|
|
|
139 |
let bm = $('#asmBmForm select[name="bm"]').val();
|
|
|
140 |
|
|
|
141 |
if (abm && bm) {
|
|
|
142 |
params["asmId"] = abm;
|
|
|
143 |
params["bmId"] = bm;
|
|
|
144 |
} else {
|
|
|
145 |
alert("Please select both ASM and BM");
|
|
|
146 |
return;
|
|
|
147 |
}
|
|
|
148 |
|
|
|
149 |
console.log("PARAMS SENT:", params);
|
|
|
150 |
|
|
|
151 |
doPostAjaxRequestWithParamsHandler(
|
|
|
152 |
context + "/trial/asm-bm",
|
|
|
153 |
params,
|
|
|
154 |
function (response) {
|
|
|
155 |
alert("ASM BM Saved Successfully");
|
|
|
156 |
}
|
|
|
157 |
);
|
|
|
158 |
}
|
|
|
159 |
|
|
|
160 |
function loadUserBrandPotential(trialFormId) {
|
|
|
161 |
|
|
|
162 |
doGetAjaxRequestHandler(
|
|
|
163 |
context + "/trial/userBrandPotential/" + trialFormId,
|
|
|
164 |
function (res) {
|
|
|
165 |
|
|
|
166 |
console.log("RAW RESPONSE:", res);
|
|
|
167 |
|
|
|
168 |
// Ensure JSON
|
|
|
169 |
if (typeof res === "string") {
|
|
|
170 |
try {
|
|
|
171 |
res = JSON.parse(res);
|
|
|
172 |
} catch (e) {
|
|
|
173 |
console.error("JSON parse failed:", e);
|
|
|
174 |
return;
|
|
|
175 |
}
|
|
|
176 |
}
|
|
|
177 |
|
|
|
178 |
$('#brandPotentialRows').empty();
|
|
|
179 |
|
|
|
180 |
let data = res.response;
|
|
|
181 |
|
|
|
182 |
if (!Array.isArray(data) || data.length === 0) {
|
|
|
183 |
$('#brandPotentialRows').append(`
|
|
|
184 |
<tr>
|
|
|
185 |
<td colspan="4" class="text-center">
|
|
|
186 |
No Brand Potential Data Available
|
|
|
187 |
</td>
|
|
|
188 |
</tr>
|
|
|
189 |
`);
|
|
|
190 |
$('#brandPotentialModal').modal('show');
|
|
|
191 |
return;
|
|
|
192 |
}
|
|
|
193 |
|
|
|
194 |
data.forEach(function (item) {
|
|
|
195 |
let createdDate = formatDateArray(item.createdAt);
|
|
|
196 |
|
|
|
197 |
let rowHtml = `
|
|
|
198 |
<tr>
|
|
|
199 |
<td>${item.trialFormId}</td>
|
|
|
200 |
<td>${item.brandName}</td>
|
|
|
201 |
<td>${item.potential}</td>
|
|
|
202 |
<td>${createdDate}</td>
|
|
|
203 |
</tr>
|
|
|
204 |
`;
|
|
|
205 |
|
|
|
206 |
$('#brandPotentialRows').append(rowHtml);
|
|
|
207 |
});
|
|
|
208 |
|
|
|
209 |
$('#brandPotentialModal').modal('show');
|
|
|
210 |
}
|
|
|
211 |
);
|
|
|
212 |
}
|
|
|
213 |
|
|
|
214 |
function formatDateArray(arr) {
|
|
|
215 |
if (!arr || arr.length < 6) return "";
|
|
|
216 |
|
|
|
217 |
let year = arr[0];
|
|
|
218 |
let month = arr[1];
|
|
|
219 |
let day = arr[2];
|
|
|
220 |
let hour = arr[3];
|
|
|
221 |
let min = arr[4];
|
|
|
222 |
let sec = arr[5];
|
|
|
223 |
|
|
|
224 |
return `${year}-${pad(month)}-${pad(day)} ${pad(hour)}:${pad(min)}:${pad(sec)}`;
|
|
|
225 |
}
|
|
|
226 |
|
|
|
227 |
function pad(v) {
|
|
|
228 |
return (v < 10 ? "0" : "") + v;
|
|
|
229 |
}
|