FIX_sAles Tracker Oppunity Changes
This commit is contained in:
parent
72dbadcb7d
commit
f19c1b9627
@ -474,6 +474,8 @@
|
|||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
var actualLeadClientName = '';
|
||||||
|
var actualLeadShortName = '';
|
||||||
let claimIndex = 1;
|
let claimIndex = 1;
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@ -1936,6 +1938,22 @@
|
|||||||
console.warn(`Incurred claim date field #${incurred_claim_date_id} not found.`);
|
console.warn(`Incurred claim date field #${incurred_claim_date_id} not found.`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// --- Re-populate Actual Lead data if it was cleared ---
|
||||||
|
if ($('#actual_lead_id').val() && $('#actual_lead_id').val() != 0) {
|
||||||
|
$('#client_name').val(actualLeadClientName);
|
||||||
|
// Re-generate short name from the stored client name to ensure consistency
|
||||||
|
if (actualLeadClientName.trim() !== '') {
|
||||||
|
let baseName = actualLeadClientName
|
||||||
|
.trim()
|
||||||
|
.substring(0, 10)
|
||||||
|
.replace(/\s+/g, '')
|
||||||
|
.toUpperCase();
|
||||||
|
makeUniqueShortName(baseName);
|
||||||
|
} else {
|
||||||
|
$('#client_short_name').val('').parsley().reset();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
function insurerChange(input, unique_id) {
|
function insurerChange(input, unique_id) {
|
||||||
@ -2284,8 +2302,9 @@
|
|||||||
|
|
||||||
function leadTypeBsedHideAndShow(value, resetValues = false) {
|
function leadTypeBsedHideAndShow(value, resetValues = false) {
|
||||||
|
|
||||||
if (value == 1) {
|
var actual_lead_id = $('#actual_lead_id').val();
|
||||||
|
|
||||||
|
if (value == 1 || (actual_lead_id && actual_lead_id != 0 && value == 3)) {
|
||||||
$('.btnDiv').show();
|
$('.btnDiv').show();
|
||||||
$('.claim-row').hide();
|
$('.claim-row').hide();
|
||||||
|
|
||||||
@ -2509,17 +2528,17 @@
|
|||||||
// CLIENT DETAILS AUTO FILL
|
// CLIENT DETAILS AUTO FILL
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
if (actual_lead_client_details) {
|
if (actual_lead_client_details) {
|
||||||
|
actualLeadClientName = actual_lead_client_details.company_name || '';
|
||||||
$('#client_name').val(actual_lead_client_details.company_name || '');
|
$('#client_name').val(actualLeadClientName);
|
||||||
|
|
||||||
$('#gst').val(actual_lead_client_details.gst_number || '');
|
$('#gst').val(actual_lead_client_details.gst_number || '');
|
||||||
|
|
||||||
existingShortName = actual_lead_client_details.short_name || '';
|
// existingShortName = actual_lead_client_details.short_name || '';
|
||||||
if (existingShortName) {
|
// if (existingShortName) {
|
||||||
// ── Short name EXISTS — just populate and validate ────────
|
// // ── Short name EXISTS — just populate and validate ────────
|
||||||
$('#client_short_name').val(existingShortName);
|
// $('#client_short_name').val(existingShortName);
|
||||||
// validateInput($('#client_short_name')[0], 'clients', 'short_name');
|
// // validateInput($('#client_short_name')[0], 'clients', 'short_name');
|
||||||
} else {
|
// } else { }
|
||||||
// Auto-generate short name from company name
|
// Auto-generate short name from company name
|
||||||
// Use a small delay to ensure DOM is ready
|
// Use a small delay to ensure DOM is ready
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
@ -2531,8 +2550,30 @@
|
|||||||
|
|
||||||
makeUniqueShortName(baseName);
|
makeUniqueShortName(baseName);
|
||||||
}, 300);
|
}, 300);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Auto-generate short name from client name on user input.
|
||||||
|
$('#client_name').on('input', function() {
|
||||||
|
let clientName = $(this).val();
|
||||||
|
if (clientName.trim() !== '') {
|
||||||
|
let baseName = clientName
|
||||||
|
.trim()
|
||||||
|
.substring(0, 10)
|
||||||
|
.replace(/\s+/g, '')
|
||||||
|
.toUpperCase();
|
||||||
|
makeUniqueShortName(baseName);
|
||||||
|
} else {
|
||||||
|
$('#client_short_name').val('').parsley().reset();
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Keep short name variable in sync if it's generated or changed
|
||||||
|
$('#client_short_name').on('input change', function() {
|
||||||
|
if ($('#actual_lead_id').val() && $('#actual_lead_id').val() != 0) {
|
||||||
|
actualLeadShortName = $(this).val();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
// CONTACT PERSON AUTO FILL
|
// CONTACT PERSON AUTO FILL
|
||||||
|
|||||||
@ -835,13 +835,23 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function showEmailHistoryModal() {
|
function showEmailHistoryModal() {
|
||||||
var $modal = $('#EmailModal');
|
const el = document.getElementById('EmailModal');
|
||||||
if (typeof jQuery !== 'undefined' && jQuery.fn && typeof jQuery.fn.modal === 'function') {
|
if (!el) return;
|
||||||
$modal.modal('show');
|
|
||||||
|
// Prefer Bootstrap 5 modal API (used by other modals in this file).
|
||||||
|
if (window.bootstrap && bootstrap.Modal) {
|
||||||
|
// Some Bootstrap builds don't include getOrCreateInstance()
|
||||||
|
if (typeof bootstrap.Modal.getOrCreateInstance === 'function') {
|
||||||
|
bootstrap.Modal.getOrCreateInstance(el).show();
|
||||||
|
} else {
|
||||||
|
new bootstrap.Modal(el).show();
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (window.bootstrap && bootstrap.Modal) {
|
|
||||||
bootstrap.Modal.getOrCreateInstance(document.getElementById('EmailModal')).show();
|
// Fallback for legacy Bootstrap setups that attach $.fn.modal.
|
||||||
|
if (typeof jQuery !== 'undefined' && jQuery.fn && typeof jQuery.fn.modal === 'function') {
|
||||||
|
$('#EmailModal').modal('show');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -853,6 +863,19 @@
|
|||||||
function getLeadsDataForMailHistory(lead_id){
|
function getLeadsDataForMailHistory(lead_id){
|
||||||
|
|
||||||
console.log("******** Inside Fnz :", lead_id);
|
console.log("******** Inside Fnz :", lead_id);
|
||||||
|
|
||||||
|
// Open the modal immediately; then fill the table after API response.
|
||||||
|
// This prevents the click from looking "non-working" while the request runs.
|
||||||
|
const container = document.querySelector(".history-container");
|
||||||
|
if (container) {
|
||||||
|
container.innerHTML = `
|
||||||
|
<div class="d-flex justify-content-center align-items-center" style="height: 50vh; width:100%;">
|
||||||
|
<p class="text-center font-color-black"><i>Loading...</i></p>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
showEmailHistoryModal();
|
||||||
|
|
||||||
let url = '<?php echo base_url('/util/getLeadEmailHistory/') ?>' + lead_id;
|
let url = '<?php echo base_url('/util/getLeadEmailHistory/') ?>' + lead_id;
|
||||||
console.log("******** Fetching:", url);
|
console.log("******** Fetching:", url);
|
||||||
|
|
||||||
@ -862,8 +885,7 @@
|
|||||||
})
|
})
|
||||||
.then(response => response.json())
|
.then(response => response.json())
|
||||||
.then(response => {
|
.then(response => {
|
||||||
let container = document.querySelector(".history-container");
|
if (container) container.innerHTML = "";
|
||||||
container.innerHTML = "";
|
|
||||||
if (response.status === "success" && response.data.length > 0) {
|
if (response.status === "success" && response.data.length > 0) {
|
||||||
console.log("******** 1" + response.status);
|
console.log("******** 1" + response.status);
|
||||||
let table = `
|
let table = `
|
||||||
@ -974,7 +996,7 @@
|
|||||||
})
|
})
|
||||||
.catch(error => {
|
.catch(error => {
|
||||||
console.log("******** 3" + error);
|
console.log("******** 3" + error);
|
||||||
document.querySelector(".history-container").innerHTML = `
|
if (container) container.innerHTML = `
|
||||||
<div class="d-flex justify-content-center align-items-center" style="height: 50vh; width:100%;">
|
<div class="d-flex justify-content-center align-items-center" style="height: 50vh; width:100%;">
|
||||||
<p class="text-center font-color-black"><i>No Data Found</i></p>
|
<p class="text-center font-color-black"><i>No Data Found</i></p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -489,6 +489,8 @@ var pageBackButton = '<a href="<?= base_url('leads/list') ?>" class="topbar-icon
|
|||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
var actualLeadClientName = '';
|
||||||
|
var actualLeadShortName = '';
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('#rfq_qcr_viewers').parsley({
|
$('#rfq_qcr_viewers').parsley({
|
||||||
@ -848,12 +850,29 @@ var pageBackButton = '<a href="<?= base_url('leads/list') ?>" class="topbar-icon
|
|||||||
$('#policy_end_date').val("");
|
$('#policy_end_date').val("");
|
||||||
$("#appendArea_1").empty();
|
$("#appendArea_1").empty();
|
||||||
|
|
||||||
|
// --- Re-populate Actual Lead data if it was cleared ---
|
||||||
|
if ($('#actual_lead_id').val() && $('#actual_lead_id').val() != 0) {
|
||||||
|
$('#client_name').val(actualLeadClientName);
|
||||||
|
// Re-generate short name from the stored client name to ensure consistency
|
||||||
|
if (actualLeadClientName.trim() !== '') {
|
||||||
|
let baseName = actualLeadClientName
|
||||||
|
.trim()
|
||||||
|
.substring(0, 10)
|
||||||
|
.replace(/\s+/g, '')
|
||||||
|
.toUpperCase();
|
||||||
|
makeUniqueShortName(baseName);
|
||||||
|
} else {
|
||||||
|
$('#client_short_name').val('').parsley().reset();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
function leadTypeBsedHideAndShow(value, resetValues = false) {
|
function leadTypeBsedHideAndShow(value, resetValues = false) {
|
||||||
|
|
||||||
if (value == 1) {
|
var actual_lead_id = $('#actual_lead_id').val();
|
||||||
|
|
||||||
|
if (value == 1 || (actual_lead_id && actual_lead_id != 0 && value == 3)) {
|
||||||
$('.btnDiv').show();
|
$('.btnDiv').show();
|
||||||
$('.claim-row').hide();
|
$('.claim-row').hide();
|
||||||
|
|
||||||
@ -1336,17 +1355,17 @@ var pageBackButton = '<a href="<?= base_url('leads/list') ?>" class="topbar-icon
|
|||||||
// CLIENT DETAILS AUTO FILL
|
// CLIENT DETAILS AUTO FILL
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
if (actual_lead_client_details) {
|
if (actual_lead_client_details) {
|
||||||
|
actualLeadClientName = actual_lead_client_details.company_name || '';
|
||||||
$('#client_name').val(actual_lead_client_details.company_name || '');
|
$('#client_name').val(actualLeadClientName);
|
||||||
|
|
||||||
$('#gst').val(actual_lead_client_details.gst_number || '');
|
$('#gst').val(actual_lead_client_details.gst_number || '');
|
||||||
existingShortName = actual_lead_client_details.short_name || '';
|
// existingShortName = actual_lead_client_details.short_name || '';
|
||||||
if (existingShortName) {
|
// if (existingShortName) {
|
||||||
// ── Short name EXISTS — just populate and validate ────────
|
// // ── Short name EXISTS — just populate and validate ────────
|
||||||
$('#client_short_name').val(existingShortName);
|
// $('#client_short_name').val(existingShortName);
|
||||||
// validateInput($('#client_short_name')[0], 'clients', 'short_name');
|
// // validateInput($('#client_short_name')[0], 'clients', 'short_name');
|
||||||
|
|
||||||
} else {
|
// } else {}
|
||||||
// Auto-generate short name from company name
|
// Auto-generate short name from company name
|
||||||
// Use a small delay to ensure DOM is ready
|
// Use a small delay to ensure DOM is ready
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
@ -1359,7 +1378,28 @@ var pageBackButton = '<a href="<?= base_url('leads/list') ?>" class="topbar-icon
|
|||||||
makeUniqueShortName(baseName);
|
makeUniqueShortName(baseName);
|
||||||
}, 300);
|
}, 300);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Auto-generate short name from client name on user input.
|
||||||
|
$('#client_name').on('input', function() {
|
||||||
|
let clientName = $(this).val();
|
||||||
|
if (clientName.trim() !== '') {
|
||||||
|
let baseName = clientName
|
||||||
|
.trim()
|
||||||
|
.substring(0, 10)
|
||||||
|
.replace(/\s+/g, '')
|
||||||
|
.toUpperCase();
|
||||||
|
makeUniqueShortName(baseName);
|
||||||
|
} else {
|
||||||
|
$('#client_short_name').val('').parsley().reset();
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Keep short name variable in sync if it's generated or changed
|
||||||
|
$('#client_short_name').on('input change', function() {
|
||||||
|
if ($('#actual_lead_id').val() && $('#actual_lead_id').val() != 0) {
|
||||||
|
actualLeadShortName = $(this).val();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
// CONTACT PERSON AUTO FILL
|
// CONTACT PERSON AUTO FILL
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user