diff --git a/assets/css/dashboard.css b/assets/css/dashboard.css index f921af3..9466a26 100644 --- a/assets/css/dashboard.css +++ b/assets/css/dashboard.css @@ -727,11 +727,16 @@ th.sort-desc::after { /* Dark mode bulk actions */ body.dark-mode .bulk-actions-toolbar { - --toolbar-bg: #3e3400; + --toolbar-bg: #1a1a00; --toolbar-border: #ffc107; --text-primary: #f8f9fa; } +body.dark-mode .bulk-actions-info { + color: #ffc107; + font-weight: bold; +} + body.dark-mode .btn-bulk { --btn-bulk-bg: #0d6efd; --btn-bulk-hover: #0b5ed7; diff --git a/assets/css/ticket.css b/assets/css/ticket.css index bdb197b..c436388 100644 --- a/assets/css/ticket.css +++ b/assets/css/ticket.css @@ -515,6 +515,20 @@ body.dark-mode .timeline-content { --border-color: #444; --text-muted: #a0aec0; --text-secondary: #cbd5e0; + background: #2d3748; + color: #f7fafc; +} + +body.dark-mode .timeline-header strong { + color: #f7fafc; +} + +body.dark-mode .timeline-action { + color: #a0aec0; +} + +body.dark-mode .timeline-date { + color: #718096; } /* Status select dropdown */ .status-select { diff --git a/assets/js/dashboard.js b/assets/js/dashboard.js index c33489b..017002c 100644 --- a/assets/js/dashboard.js +++ b/assets/js/dashboard.js @@ -403,22 +403,6 @@ function createHamburgerMenu() {

Ticket Actions

-
- - ${window.ticketData.status} - -
-
P${window.ticketData.priority} diff --git a/controllers/TicketController.php b/controllers/TicketController.php index 40d5cab..f1d4fd4 100644 --- a/controllers/TicketController.php +++ b/controllers/TicketController.php @@ -59,11 +59,6 @@ class TicketController { return; } - // Log ticket view to audit log - if (isset($GLOBALS['auditLog']) && $userId) { - $GLOBALS['auditLog']->logTicketView($userId, $id); - } - // Get comments for this ticket using CommentModel $comments = $this->commentModel->getCommentsByTicketId($id); diff --git a/migrations/011_remove_view_tracking.sql b/migrations/011_remove_view_tracking.sql new file mode 100644 index 0000000..da878a8 --- /dev/null +++ b/migrations/011_remove_view_tracking.sql @@ -0,0 +1,2 @@ +-- Remove all ticket view tracking records from audit_log +DELETE FROM audit_log WHERE action_type = 'view'; diff --git a/models/TicketModel.php b/models/TicketModel.php index c253844..20254d5 100644 --- a/models/TicketModel.php +++ b/models/TicketModel.php @@ -118,10 +118,13 @@ class TicketModel { // Get tickets with pagination and creator info $sql = "SELECT t.*, - u.username as creator_username, - u.display_name as creator_display_name + u_created.username as creator_username, + u_created.display_name as creator_display_name, + u_assigned.username as assigned_username, + u_assigned.display_name as assigned_display_name FROM tickets t - LEFT JOIN users u ON t.created_by = u.user_id + LEFT JOIN users u_created ON t.created_by = u_created.user_id + LEFT JOIN users u_assigned ON t.assigned_to = u_assigned.user_id $whereClause ORDER BY $sortColumn $sortDirection LIMIT ? OFFSET ?"; diff --git a/views/DashboardView.php b/views/DashboardView.php index a022878..528deb0 100644 --- a/views/DashboardView.php +++ b/views/DashboardView.php @@ -205,6 +205,7 @@ 'type' => 'Type', 'status' => 'Status', 'created_by' => 'Created By', + 'assigned_to' => 'Assigned To', 'created_at' => 'Created', 'updated_at' => 'Updated' ]; @@ -225,6 +226,7 @@ if (count($tickets) > 0) { foreach($tickets as $row) { $creator = $row['creator_display_name'] ?? $row['creator_username'] ?? 'System'; + $assignedTo = $row['assigned_display_name'] ?? $row['assigned_username'] ?? 'Unassigned'; echo ""; // Add checkbox column for admins @@ -239,12 +241,13 @@ echo "{$row['type']}"; echo "{$row['status']}"; echo "" . htmlspecialchars($creator) . ""; + echo "" . htmlspecialchars($assignedTo) . ""; echo "" . date('Y-m-d H:i', strtotime($row['created_at'])) . ""; echo "" . date('Y-m-d H:i', strtotime($row['updated_at'])) . ""; echo ""; } } else { - $colspan = ($GLOBALS['currentUser']['is_admin'] ?? false) ? '10' : '9'; + $colspan = ($GLOBALS['currentUser']['is_admin'] ?? false) ? '11' : '10'; echo "No tickets found"; } ?>