From 4060bea7a65afb91efb7cc4d7ce2b1a7af50b1c8 Mon Sep 17 00:00:00 2001 From: Andrew Malsbury Date: Tue, 14 Nov 2023 17:41:30 +0000 Subject: [PATCH] Add new ticket status and refactor ticket status filter. --- get_settings.php | 1 + tickets.php | 29 +++++++++-------------------- 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/get_settings.php b/get_settings.php index b05d5268..80080ae4 100644 --- a/get_settings.php +++ b/get_settings.php @@ -204,6 +204,7 @@ $asset_status_array = array ( $ticket_status_array = array ( 'Pending-Assignment', 'Assigned', + 'Client-Replied', 'In-Progress', 'Pending-Shipment', 'Pending-Client', diff --git a/tickets.php b/tickets.php index 939b7a75..d869a025 100644 --- a/tickets.php +++ b/tickets.php @@ -6,35 +6,24 @@ $order = "DESC"; require_once "inc_all.php"; -// Get Statuses from DB -$statuses = array(); -$query = "SELECT DISTINCT ticket_status FROM tickets ORDER BY ticket_status"; -$result = mysqli_query($mysqli, $query); -while ($row = mysqli_fetch_assoc($result)) { - $statuses[] = $row['ticket_status']; -} -// Set Ticket statuses sort -if (isset($_GET['status']) && !empty($_GET['status'])) { - $ticket_statuses = $_GET['status']; +// Set Statuses from URL +if (!empty($_GET['status'])) { + $raw_statuses = is_array($_GET['status']) ? $_GET['status'] : array($_GET['status']); + $ticket_statuses = array_map(function($status) use ($mysqli) { + return mysqli_real_escape_string($mysqli, $status); + }, $raw_statuses); } else { - $ticekt_status = "Open"; + $ticket_statuses = array(); } // Set Status Clause for SQL Query -if (!isset($_GET['status']) || empty($_GET['status'])) { +if (empty($ticket_statuses)) { $ticket_status_clause = "ticket_status != 'Closed'"; } else { $ticket_status_clause = "ticket_status IN ('" . implode("','", $ticket_statuses) . "')"; } -// Set Statuses -if (!empty($_GET['status'])) { - $ticket_statuses = is_array($_GET['status']) ? $_GET['status'] : array($_GET['status']); -} else { - $ticket_statuses = array(); -} - // Ticket assignment status filter if (isset($_GET['assigned']) & !empty($_GET['assigned'])) { if ($_GET['assigned'] == 'unassigned') { @@ -204,7 +193,7 @@ $user_active_assigned_tickets = intval($row['total_tickets_assigned']);