Merge branch 'dev' of bitbucket.org:jubilian/nhance-enrollment into dev

This commit is contained in:
vadivelJ96 2025-10-13 18:01:32 +05:30
commit 93d3e37fe5

View File

@ -99,10 +99,8 @@
</div> </div>
<div class="card-body status-option" id="statusContent" style="padding: 1.5rem !important;background-color: darkgrey;"> <div class="card-body status-option" id="statusContent" style="padding: 1.5rem !important;background-color: darkgrey;">
<div class="text-center"> <div class="text-center">
<div class="row" style="/* margin-left: 125px; */margin-bottom: -11px;">
<div class="row" style="margin-left: 125px; margin-bottom: -11px;">
<div class="col-xl-2 col-md-2"> <div class="col-xl-2 col-md-2">
<div class="card cardWidth"> <div class="card cardWidth">
<div class="card-body" id="emp_count_view_click"> <div class="card-body" id="emp_count_view_click">
@ -111,7 +109,6 @@
<h5 class="text-muted font-weight-normal mt-0 text-truncate" title="Emp Count">Emp Count</h5> <h5 class="text-muted font-weight-normal mt-0 text-truncate" title="Emp Count">Emp Count</h5>
<h3 class="my-2 py-1"><span data-plugin="counterup" id="emp_count_view">0</span></h3> <h3 class="my-2 py-1"><span data-plugin="counterup" id="emp_count_view">0</span></h3>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
@ -168,10 +165,20 @@
</div> </div>
</div> </div>
</div><!-- end col --> </div><!-- end col -->
<div class="col-xl-2 col-md-2">
<div class="card">
<div class="card-body" id="emp_draft_view_click">
<div class="d-flex justify-content-between" style="justify-content: center !important;">
<div>
<h5 class="text-muted font-weight-normal mt-0 text-truncate" title="Not Logged-In">Draft</h5>
<h3 class="my-2 py-1"><span data-plugin="counterup" id="emp_draft_view">0</span></h3>
</div>
</div>
</div>
</div>
</div><!-- end col -->
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
@ -297,16 +304,16 @@
}); });
} }
function filterTable(columnIndex, filterValue) // function filterTable(columnIndex, filterValue)
{ // {
var table = $('#tickets-table').DataTable(); // var table = $('#tickets-table').DataTable();
// Reset the search filter for all columns // // Reset the search filter for all columns
table.columns().search('').draw(); // table.columns().search('').draw();
// Apply the filter to the specified column // // Apply the filter to the specified column
table.column(columnIndex).search(filterValue).draw(); // table.column(columnIndex).search(filterValue).draw();
} // }
function fetchEmpolyeeList(event) function fetchEmpolyeeList(event)
{ {
@ -357,28 +364,45 @@
return; return;
} }
var enrolled_count = 0; var enrolled_count = 0;
var not_enrolled_count = 0;
var loggedIn_count = 0; var loggedIn_count = 0;
var not_loggedIn_count = 0;
var self_count = 0;
var draft_count = 0;
data.forEach(function(employee, index) { data.forEach(function(employee, index) {
if(employee.relationship.toLowerCase() === "self"){
self_count++
}
if(employee.emp_status === 'enrolled'){ if(employee.emp_status === 'enrolled'){
var enrolled = 'Yes'; var enrolled = 'Yes';
enrolled_count++; enrolled_count++;
}else{ }else{
var enrolled = 'No'; var enrolled = 'No';
if (employee.relationship.toLowerCase() === "self") {
not_enrolled_count++;
}
} }
if(employee.user_type === 'employee'){ if(employee.relationship.toLowerCase() === "self" && employee.user_type === 'employee'){
var loggedIn = 'Yes'; var loggedIn = 'Yes';
loggedIn_count++; loggedIn_count++;
}else{ }else{
if (employee.relationship && employee.relationship.toLowerCase() === "self") { if (employee.relationship && employee.relationship.toLowerCase() === "self") {
var loggedIn = 'No'; var loggedIn = 'No';
not_loggedIn_count ++;
}else{ }else{
var loggedIn = '-'; var loggedIn = '-';
} }
} }
if(employee.relationship.toLowerCase() === "self" && enrolled == "No" && loggedIn == "Yes"){
draft_count++;
}
table.row.add([ table.row.add([
index + 1, index + 1,
employee.employee_name, employee.employee_name,
@ -387,15 +411,15 @@
enrolled, enrolled,
loggedIn loggedIn
]); ]);
$('#emp_count_view').html(data.length);
$('#emp_enrolled_view').html(enrolled_count);
$('#emp_not_enrolled_view').html(data.length - enrolled_count);
$('#emp_logged_in_view').html(loggedIn_count);
$('#emp_not_logged_in_view').html(data.length - loggedIn_count);
}); });
$('#emp_count_view').html(self_count);
$('#emp_enrolled_view').html(enrolled_count);
$('#emp_not_enrolled_view').html(not_enrolled_count);
$('#emp_logged_in_view').html(loggedIn_count);
$('#emp_not_logged_in_view').html(not_loggedIn_count);
$('#emp_draft_view').html(draft_count);
table.draw(); table.draw();
function getUrlParameter(name) { function getUrlParameter(name) {
@ -490,91 +514,167 @@
}); });
$('#emp_enrolled_view_click').on('click', function() { // $('#emp_enrolled_view_click').on('click', function() {
console.log($(this).hasClass('click_hover')); // console.log($(this).hasClass('click_hover'));
if ($(this).hasClass('click_hover')) { // if ($(this).hasClass('click_hover')) {
// $(this).removeClass('click_hover'); // // $(this).removeClass('click_hover');
$('.click_hover').each(function() { // $('.click_hover').each(function() {
$(this).removeClass('click_hover'); // $(this).removeClass('click_hover');
}); // });
table.columns().search('').draw(); // Clear all filters and show all data // table.columns().search('').draw(); // Clear all filters and show all data
}else{ // }else{
$('.click_hover').each(function() { // $('.click_hover').each(function() {
$(this).removeClass('click_hover'); // $(this).removeClass('click_hover');
}); // });
$('#emp_enrolled_view_click').addClass('click_hover'); // $('#emp_enrolled_view_click').addClass('click_hover');
filterTable(4, 'Yes'); // Filter "Enrolled" column (4th column, index 3) // filterTable(4, 'Yes'); // Filter "Enrolled" column (4th column, index 3)
} // }
// });
// $('#emp_not_enrolled_view_click').on('click', function() {
// if ($(this).hasClass('click_hover')) {
// // $(this).removeClass('click_hover');
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// table.columns().search('').draw(); // Clear all filters and show all data
// }else{
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// $('#emp_not_enrolled_view_click').addClass('click_hover');
// filterTable(4, 'No'); // Filter "Enrolled" column (4th column, index 3)
// }
// });
// $('#emp_logged_in_view_click').on('click', function() {
// if ($(this).hasClass('click_hover')) {
// // $(this).removeClass('click_hover');
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// table.columns().search('').draw(); // Clear all filters and show all data
// }else{
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// $('#emp_logged_in_view_click').addClass('click_hover');
// filterTable(5, 'Yes'); // Filter "Logged-In" column (5th column, index 4)
// }
// });
// $('#emp_not_logged_in_view_click').on('click', function() {
// if ($(this).hasClass('click_hover')) {
// // $(this).removeClass('click_hover');
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// table.columns().search('').draw(); // Clear all filters and show all data
// }else{
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// $('#emp_not_logged_in_view_click').addClass('click_hover');
// filterTable(5, 'No'); // Filter "Logged-In" column (5th column, index 4)
// }
// });
// $('#emp_draft_view_click').on('click', function() {
// var table = $('#tickets-table').DataTable();
// if ($(this).hasClass('click_hover')) {
// // Remove active class and reset filters
// $('.click_hover').removeClass('click_hover');
// table.columns().search('').draw(); // Clear all filters
// } else {
// // Remove existing active state and set new one
// $('.click_hover').removeClass('click_hover');
// $(this).addClass('click_hover');
// // Apply both filters simultaneously
// filterTableMultiple([
// { column: 5, value: 'Yes' },
// { column: 4, value: 'No' }
// ]);
// }
// });
// $('#emp_count_view_click').on('click', function() {
// if ($(this).hasClass('click_hover')) {
// // $(this).removeClass('click_hover');
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// table.columns().search('').draw(); // Clear all filters and show all data
// }else{
// $('.click_hover').each(function() {
// $(this).removeClass('click_hover');
// });
// $('#emp_count_view_click').addClass('click_hover');
// table.columns().search('').draw(); // Clear all filters and show all data
// }
// });
// === Attach click handlers ===
$('#emp_enrolled_view_click').on('click', function() {
handleFilterClick('emp_enrolled_view_click', [{ column: 4, value: 'Yes' }]);
}); });
$('#emp_not_enrolled_view_click').on('click', function() { $('#emp_not_enrolled_view_click').on('click', function() {
if ($(this).hasClass('click_hover')) { handleFilterClick('emp_not_enrolled_view_click', [
// $(this).removeClass('click_hover'); { column: 3, value: 'Self' },
$('.click_hover').each(function() { { column: 4, value: 'No' }
$(this).removeClass('click_hover'); ]);
});
table.columns().search('').draw(); // Clear all filters and show all data
}else{
$('.click_hover').each(function() {
$(this).removeClass('click_hover');
});
$('#emp_not_enrolled_view_click').addClass('click_hover');
filterTable(4, 'No'); // Filter "Enrolled" column (4th column, index 3)
}
}); });
$('#emp_logged_in_view_click').on('click', function() { $('#emp_logged_in_view_click').on('click', function() {
if ($(this).hasClass('click_hover')) { handleFilterClick('emp_logged_in_view_click', [{ column: 5, value: 'Yes' }]);
// $(this).removeClass('click_hover');
$('.click_hover').each(function() {
$(this).removeClass('click_hover');
});
table.columns().search('').draw(); // Clear all filters and show all data
}else{
$('.click_hover').each(function() {
$(this).removeClass('click_hover');
});
$('#emp_logged_in_view_click').addClass('click_hover');
filterTable(5, 'Yes'); // Filter "Logged-In" column (5th column, index 4)
}
}); });
$('#emp_not_logged_in_view_click').on('click', function() { $('#emp_not_logged_in_view_click').on('click', function() {
if ($(this).hasClass('click_hover')) { handleFilterClick('emp_not_logged_in_view_click', [{ column: 5, value: 'No' }]);
// $(this).removeClass('click_hover'); });
$('.click_hover').each(function() {
$(this).removeClass('click_hover'); // 🔹 Attach click handlers
}); $('#emp_draft_view_click').on('click', function() {
table.columns().search('').draw(); // Clear all filters and show all data handleFilterClick('emp_draft_view_click', [
}else{ { column: 5, value: 'Yes' }, // Logged-in = Yes
$('.click_hover').each(function() { { column: 4, value: 'No' } // Enrolled = No
$(this).removeClass('click_hover'); ]);
});
$('#emp_not_logged_in_view_click').addClass('click_hover');
filterTable(5, 'No'); // Filter "Logged-In" column (5th column, index 4)
}
}); });
$('#emp_count_view_click').on('click', function() { $('#emp_count_view_click').on('click', function() {
if ($(this).hasClass('click_hover')) { // Just reset all filters — no column filter needed
// $(this).removeClass('click_hover'); handleFilterClick('emp_count_view_click', [{ column: 3, value: 'Self' }]);
$('.click_hover').each(function() {
$(this).removeClass('click_hover');
});
table.columns().search('').draw(); // Clear all filters and show all data
}else{
$('.click_hover').each(function() {
$(this).removeClass('click_hover');
});
$('#emp_count_view_click').addClass('click_hover');
table.columns().search('').draw(); // Clear all filters and show all data
}
}); });
toggleContent(); toggleContent();
}); });
// Common function to handle DataTable filter toggling
function handleFilterClick(buttonId, filters = null) {
var table = $('#tickets-table').DataTable();
var $button = $('#' + buttonId);
if ($button.hasClass('click_hover')) {
// Remove highlight and clear filters
$('.click_hover').removeClass('click_hover');
table.columns().search('').draw();
} else {
// Remove existing active state, set new one
$('.click_hover').removeClass('click_hover');
$button.addClass('click_hover');
// Apply multiple filters (array of {column, value})
table.columns().search(''); // clear existing filters
if(filters){
filters.forEach(f => table.column(f.column).search(f.value));
}
table.draw();
}
}
function toggleContent() function toggleContent()
{ {
var content = document.getElementById("statusContent"); var content = document.getElementById("statusContent");