diff --git a/includes/layout/footer.php b/includes/layout/footer.php
index e3a22b5..464eec2 100644
--- a/includes/layout/footer.php
+++ b/includes/layout/footer.php
@@ -88,7 +88,7 @@
@@ -1649,26 +1498,6 @@ function showDeleteNurseModal(id) {
modal.show();
}
-function showEditEmployeeModal(data) {
- document.getElementById('edit_employee_id').value = data.id;
- document.getElementById('edit_employee_name_en').value = data.name_en;
- document.getElementById('edit_employee_name_ar').value = data.name_ar;
- document.getElementById('edit_employee_dob').value = data.dob || '';
- document.getElementById('edit_employee_mobile').value = data.mobile || '';
- document.getElementById('edit_employee_email').value = data.email || '';
- document.getElementById('edit_employee_dept_id').value = data.department_id || '';
- document.getElementById('edit_employee_position_id').value = data.position_id || '';
-
- var modal = new bootstrap.Modal(document.getElementById('editEmployeeModal'));
- modal.show();
-}
-
-function showDeleteEmployeeModal(id) {
- document.getElementById('delete_employee_id').value = id;
- var modal = new bootstrap.Modal(document.getElementById('deleteEmployeeModal'));
- modal.show();
-}
-
function showEditCityModal(data) {
document.getElementById('edit_city_id').value = data.id;
document.getElementById('edit_city_name_en').value = data.name_en;
@@ -1741,7 +1570,7 @@ $(document).ready(function() {
// Initialize Inputmask
if (typeof Inputmask !== 'undefined') {
- Inputmask().mask(document.querySelectorAll("input"));
+ Inputmask().mask(document.querySelectorAll("[data-inputmask], [data-inputmask-alias], [data-inputmask-mask]"));
}
// Initialize Summernote
diff --git a/includes/pages/employees.php b/includes/pages/employees.php
index b2f664f..adf51f6 100644
--- a/includes/pages/employees.php
+++ b/includes/pages/employees.php
@@ -6,6 +6,8 @@ $page = isset($_GET['page']) && is_numeric($_GET['page']) ? (int)$_GET['page'] :
$limit = 10;
$offset = ($page - 1) * $limit;
+$lang = $_SESSION['lang'] ?? 'en';
+
$where = "WHERE 1=1";
$params = [];
@@ -27,8 +29,9 @@ $totalEmployees = $stmt->fetchColumn();
$totalPages = ceil($totalEmployees / $limit);
// Fetch Data
+// Explicitly selecting room_number just to be safe, though e.* covers it.
$query = "
- SELECT e.*, d.name_$lang as department_name, p.name_$lang as position_name
+ SELECT e.*, e.room_number, d.name_$lang as department_name, p.name_$lang as position_name
FROM employees e
LEFT JOIN departments d ON e.department_id = d.id
LEFT JOIN positions p ON e.position_id = p.id
@@ -41,14 +44,25 @@ $stmt->execute($params);
$employees = $stmt->fetchAll();
// Fetch Departments for Dropdown (Needed for Search Bar and Modal)
-$deptQuery = "SELECT * FROM departments ORDER BY name_$lang";
-$deptStmt = $db->query($deptQuery);
-$all_departments = $deptStmt->fetchAll();
+$deptNameCol = ($lang === 'ar') ? 'name_ar' : 'name_en';
+$deptQuery = "SELECT id, $deptNameCol as name, active FROM departments ORDER BY $deptNameCol";
+try {
+ $deptStmt = $db->query($deptQuery);
+ $all_departments = $deptStmt->fetchAll();
+} catch (Exception $e) {
+ $all_departments = [];
+ error_log("Error fetching departments: " . $e->getMessage());
+}
// Fetch Positions for Dropdown (Needed for Modal)
-$posQuery = "SELECT * FROM positions ORDER BY name_$lang";
-$posStmt = $db->query($posQuery);
-$all_positions = $posStmt->fetchAll();
+$posNameCol = ($lang === 'ar') ? 'name_ar' : 'name_en';
+$posQuery = "SELECT id, $posNameCol as name FROM positions ORDER BY $posNameCol";
+try {
+ $posStmt = $db->query($posQuery);
+ $all_positions = $posStmt->fetchAll();
+} catch (Exception $e) {
+ $all_positions = [];
+}
// --- AJAX HANDLER ---
if (isset($_GET['ajax_search'])) {
@@ -177,7 +191,7 @@ if (isset($_GET['ajax_search'])) {
@@ -324,9 +338,9 @@ if (isset($_GET['ajax_search'])) {
-
+
-
+
@@ -343,7 +357,7 @@ if (isset($_GET['ajax_search'])) {
-
+
@@ -353,7 +367,7 @@ if (isset($_GET['ajax_search'])) {