Fix export page role issue

This commit is contained in:
Nguyen Ngo
2025-08-15 15:48:41 -04:00
parent ed88d5fe3a
commit ec18c62ed8
3 changed files with 49 additions and 7 deletions
+21 -1
View File
@@ -1017,8 +1017,19 @@ function exportAttendanceWithAccuracy() {
}
function exportAttendance() {
// Check user role before proceeding
const userRole = window.userRole; // Read from global variable set in template
console.log("Template - session.role:", '{{ session.role }}');
console.log("Template - window.userRole set to:", window.userRole);
if (!['admin', 'payroll'].includes(userRole)) {
console.log("Export access denied - insufficient privileges");
alert("Access denied. Only administrators and payroll staff can export data.");
return;
}
// Log export action
console.log("Export button clicked - redirecting to configuration page");
console.log(`Export button clicked by ${userRole} - redirecting to configuration page`);
// Get current filters
const currentFilters = getCurrentFilters();
@@ -1053,6 +1064,15 @@ function getCurrentFilters() {
// Add a quick CSV export function as backup (keep existing functionality)
function exportAttendanceCSV() {
// Check user role before proceeding
const userRole = window.userRole;
if (!['admin', 'payroll'].includes(userRole)) {
console.log("CSV export access denied - insufficient privileges");
alert("Access denied. Only administrators and payroll staff can export data.");
return;
}
// Build export URL with current filters for CSV
const params = new URLSearchParams();
const filters = getCurrentFilters();