From 1666305a1ca12ebef9603c0ba079391fc0e2aaca Mon Sep 17 00:00:00 2001 From: johnnyq Date: Tue, 29 Sep 2026 18:02:05 -0400 Subject: [PATCH] UI: User Avatar pills for Assigned tickets, updated Icons for Ticket Mine and Unusassigned tickets --- agent/asset.php | 11 +---------- agent/contact.php | 13 ++----------- agent/modals/asset/asset.php | 11 +---------- agent/modals/contact/contact.php | 13 ++----------- agent/project.php | 13 ++----------- agent/recurring_tickets.php | 2 +- agent/ticket.php | 9 ++------- agent/ticket_kanban.php | 8 +------- agent/ticket_list.php | 7 +------ agent/tickets.php | 6 +++--- functions/format.php | 28 ++++++++++++++++++++++++++++ 11 files changed, 44 insertions(+), 77 deletions(-) diff --git a/agent/asset.php b/agent/asset.php index a23ff0f44..f5b5bed51 100644 --- a/agent/asset.php +++ b/agent/asset.php @@ -1156,16 +1156,7 @@ if (isset($_GET['asset_id'])) { } else { $ticket_priority_display = "-"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - if ($ticket_status_id == 5) { - $ticket_assigned_to_display = "

Not Assigned

"; - } else { - $ticket_assigned_to_display = "

Not Assigned

"; - } - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], !in_array($ticket_status_id, [4, 5])); ?> diff --git a/agent/contact.php b/agent/contact.php index 764751df6..7366b5b3a 100644 --- a/agent/contact.php +++ b/agent/contact.php @@ -118,7 +118,7 @@ if (isset($_GET['contact_id'])) { // Related Tickets Query - 1 to 1 relationship $sql_related_tickets = mysqli_query($mysqli, "SELECT ticket_assigned_to, ticket_closed_at, ticket_created_at, ticket_id, ticket_number, ticket_prefix, ticket_priority, ticket_status, ticket_status_color, ticket_status_name, - ticket_subject, ticket_updated_at, user_name FROM tickets + ticket_subject, ticket_updated_at, user_avatar, user_name FROM tickets LEFT JOIN users ON ticket_assigned_to = user_id LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id WHERE ticket_contact_id = $contact_id ORDER BY ticket_id DESC"); @@ -885,16 +885,7 @@ if (isset($_GET['contact_id'])) { } else { $ticket_priority_display = "-"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - if ($ticket_status == "Closed") { - $ticket_assigned_to_display = "

Not Assigned

"; - } else { - $ticket_assigned_to_display = "

Not Assigned

"; - } - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], !in_array(intval($row['ticket_status']), [4, 5])); ?> diff --git a/agent/modals/asset/asset.php b/agent/modals/asset/asset.php index 1fa8813e1..508bf800b 100644 --- a/agent/modals/asset/asset.php +++ b/agent/modals/asset/asset.php @@ -687,16 +687,7 @@ ob_start(); } else { $ticket_priority_display = "-"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - if ($ticket_status_id == 5) { - $ticket_assigned_to_display = "

Not Assigned

"; - } else { - $ticket_assigned_to_display = "

Not Assigned

"; - } - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], !in_array($ticket_status_id, [4, 5])); ?> diff --git a/agent/modals/contact/contact.php b/agent/modals/contact/contact.php index d07635c9b..862c7b979 100644 --- a/agent/modals/contact/contact.php +++ b/agent/modals/contact/contact.php @@ -99,7 +99,7 @@ $credential_count = mysqli_num_rows($sql_related_credentials); // Related Tickets Query - 1 to 1 relationship $sql_related_tickets = mysqli_query($mysqli, "SELECT ticket_assigned_to, ticket_created_at, ticket_id, ticket_number, ticket_prefix, ticket_priority, ticket_status, ticket_status_color, ticket_status_name, ticket_subject, - ticket_updated_at, user_name FROM tickets + ticket_updated_at, user_avatar, user_name FROM tickets LEFT JOIN users ON ticket_assigned_to = user_id LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id WHERE ticket_contact_id = $contact_id @@ -658,16 +658,7 @@ ob_start(); $ticket_priority_display = "-"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - if ($ticket_status == "Closed") { - $ticket_assigned_to_display = "

Not Assigned

"; - } else { - $ticket_assigned_to_display = "

Not Assigned

"; - } - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], !in_array(intval($row['ticket_status']), [4, 5])); ?> diff --git a/agent/project.php b/agent/project.php index d7ba75d7e..11d457aba 100644 --- a/agent/project.php +++ b/agent/project.php @@ -87,7 +87,7 @@ if (isset($_GET['project_id'])) { $sql_tickets = mysqli_query($mysqli, "SELECT client_id, client_name, ticket_assigned_to, ticket_billable, ticket_closed_at, ticket_created_at, ticket_id, ticket_number, ticket_prefix, ticket_priority, ticket_project_id, ticket_status, ticket_status_color, ticket_status_name, ticket_subject, - ticket_updated_at, user_name FROM tickets + ticket_updated_at, user_avatar, user_name FROM tickets LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id LEFT JOIN clients ON ticket_client_id = client_id LEFT JOIN users ON ticket_assigned_to = user_id @@ -423,16 +423,7 @@ if (isset($_GET['project_id'])) { $ticket_priority_display = "-"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - if ($ticket_status == 5) { - $ticket_assigned_to_display = "

Not Assigned

"; - } else { - $ticket_assigned_to_display = "

Not Assigned

"; - } - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], !in_array($ticket_status, [4, 5])); $project_id = intval($row['ticket_project_id']); diff --git a/agent/recurring_tickets.php b/agent/recurring_tickets.php index 387bc8f29..9a3db471e 100644 --- a/agent/recurring_tickets.php +++ b/agent/recurring_tickets.php @@ -295,7 +295,7 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()")); } $recurring_ticket_category = escapeHtml($row['category_name']) ?: '-'; $recurring_ticket_client_name = escapeHtml($row['client_name']); - $assigned_to = escapeHtml($row['user_name']) ?: '-'; + $assigned_to = formatAssignee($row['recurring_ticket_assigned_to'], $row['user_name'], $row['user_avatar'], false); $recurring_ticket_template_name = escapeHtml($row['ticket_template_name']); $recurring_ticket_task_count = intval($row['recurring_ticket_task_count']); ?> diff --git a/agent/ticket.php b/agent/ticket.php index 3ff5da964..3a8eb0db4 100644 --- a/agent/ticket.php +++ b/agent/ticket.php @@ -130,12 +130,7 @@ if (isset($_GET['ticket_id'])) { $ticket_is_open = !$ticket_is_resolved && !$ticket_is_closed; $can_edit_ticket = lookupUserPermission("module_support") >= 2; - $ticket_assigned_to = intval($ticket['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - $ticket_assigned_to_display = "Unassigned"; - } else { - $ticket_assigned_to_display = escapeHtml($ticket['user_name']); - } + $ticket_assigned_to_display = formatAssignee($ticket['ticket_assigned_to'], $ticket['user_name'], $ticket['user_avatar'], $ticket_is_open); // Tab Title // No Sanitizing needed $page_title = $ticket['ticket_subject']; @@ -604,7 +599,7 @@ if (isset($_GET['ticket_id'])) {
Assigned to
- + diff --git a/agent/ticket_kanban.php b/agent/ticket_kanban.php index fc2590bb7..fff94ec68 100644 --- a/agent/ticket_kanban.php +++ b/agent/ticket_kanban.php @@ -189,13 +189,7 @@ $kanban = array_values($statuses); diff --git a/agent/ticket_list.php b/agent/ticket_list.php index bd9a5cdfe..928574a00 100644 --- a/agent/ticket_list.php +++ b/agent/ticket_list.php @@ -256,12 +256,7 @@ if ($tickets) { $ticket_priority_color = "info"; } - $ticket_assigned_to = intval($row['ticket_assigned_to']); - if (empty($ticket_assigned_to)) { - $ticket_assigned_to_display = $ticket_is_open ? "Unassigned" : "Unassigned"; - } else { - $ticket_assigned_to_display = escapeHtml($row['user_name']); - } + $ticket_assigned_to_display = formatAssignee($row['ticket_assigned_to'], $row['user_name'], $row['user_avatar'], $ticket_is_open); if (empty($contact_name)) { $contact_display = "-"; diff --git a/agent/tickets.php b/agent/tickets.php index 750608df7..94e54b1c5 100644 --- a/agent/tickets.php +++ b/agent/tickets.php @@ -267,7 +267,7 @@ $ticket_select_columns = ticket_response_sla_alert_stage, ticket_resolution_sla_alert_stage, ticket_status_id, ticket_status_name, ticket_status_color, ticket_status_pauses_sla, client_name, contact_id, contact_name, contact_email, - user_name, asset_name, category_name"; + user_name, user_avatar, asset_name, category_name"; $ticket_joins = "LEFT JOIN clients ON ticket_client_id = client_id @@ -381,11 +381,11 @@ if ($date_filter_active) {