From beaa56dc36a7de71816bf2bd0acaf45334b9d990 Mon Sep 17 00:00:00 2001 From: johnnyq Date: Sun, 17 Sep 2023 18:36:48 -0400 Subject: [PATCH] Removed Ticket assignment through edit ticket, has to be done within the ticket itself, properly update the status to assigned and pending-assignment based off whos assigned to the ticket --- client_tickets.php | 18 +++++++++++------- post/ticket.php | 18 +++++++++++++----- ticket.php | 1 + ticket_edit_modal.php | 29 ----------------------------- tickets.php | 8 ++++++-- 5 files changed, 31 insertions(+), 43 deletions(-) diff --git a/client_tickets.php b/client_tickets.php index d29dd751..d82d5757 100644 --- a/client_tickets.php +++ b/client_tickets.php @@ -101,12 +101,16 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()")); } $ticket_closed_at = nullable_htmlentities($row['ticket_closed_at']); - if ($ticket_status == "Open") { - $ticket_status_display = "$ticket_status"; - } elseif ($ticket_status == "Working") { - $ticket_status_display = "$ticket_status"; - } else { - $ticket_status_display = "$ticket_status"; + if ($ticket_status == "Pending-Assignment") { + $ticket_status_color = "danger"; + } elseif ($ticket_status == "Assigned") { + $ticket_status_color = "primary"; + } elseif ($ticket_status == "In-Progress") { + $ticket_status_color = "success"; + } elseif ($ticket_status == "Closed") { + $ticket_status_color = "dark"; + } else{ + $ticket_status_color = "secondary"; } if ($ticket_priority == "High") { @@ -160,7 +164,7 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()")); - + diff --git a/post/ticket.php b/post/ticket.php index 2ffadb7e..029d4d18 100644 --- a/post/ticket.php +++ b/post/ticket.php @@ -10,6 +10,11 @@ if (isset($_POST['add_ticket'])) { $client_id = intval($_POST['client']); $assigned_to = intval($_POST['assigned_to']); + if($assigned_to == 0){ + $ticket_status = 'Pending-Assignment'; + }else{ + $ticket_status = 'Assigned'; + } $contact = intval($_POST['contact']); $subject = sanitizeInput($_POST['subject']); $priority = sanitizeInput($_POST['priority']); @@ -30,7 +35,7 @@ if (isset($_POST['add_ticket'])) { $new_config_ticket_next_number = $config_ticket_next_number + 1; mysqli_query($mysqli,"UPDATE settings SET config_ticket_next_number = $new_config_ticket_next_number WHERE company_id = 1"); - mysqli_query($mysqli,"INSERT INTO tickets SET ticket_prefix = '$config_ticket_prefix', ticket_number = $ticket_number, ticket_subject = '$subject', ticket_details = '$details', ticket_priority = '$priority', ticket_status = 'Open', ticket_vendor_ticket_number = '$vendor_ticket_number', ticket_vendor_id = $vendor_id, ticket_asset_id = $asset_id, ticket_created_by = $session_user_id, ticket_assigned_to = $assigned_to, ticket_contact_id = $contact, ticket_client_id = $client_id"); + mysqli_query($mysqli,"INSERT INTO tickets SET ticket_prefix = '$config_ticket_prefix', ticket_number = $ticket_number, ticket_subject = '$subject', ticket_details = '$details', ticket_priority = '$priority', ticket_status = '$ticket_status', ticket_vendor_ticket_number = '$vendor_ticket_number', ticket_vendor_id = $vendor_id, ticket_asset_id = $asset_id, ticket_created_by = $session_user_id, ticket_assigned_to = $assigned_to, ticket_contact_id = $contact, ticket_client_id = $client_id"); $ticket_id = mysqli_insert_id($mysqli); @@ -115,7 +120,6 @@ if (isset($_POST['edit_ticket'])) { validateTechRole(); $ticket_id = intval($_POST['ticket_id']); - $assigned_to = intval($_POST['assigned_to']); $contact_id = intval($_POST['contact']); $subject = sanitizeInput($_POST['subject']); $priority = sanitizeInput($_POST['priority']); @@ -126,7 +130,7 @@ if (isset($_POST['edit_ticket'])) { $client_id = intval($_POST['client_id']); $ticket_number = intval($_POST['ticket_number']); - mysqli_query($mysqli,"UPDATE tickets SET ticket_subject = '$subject', ticket_priority = '$priority', ticket_details = '$details', ticket_vendor_ticket_number = '$vendor_ticket_number', ticket_assigned_to = $assigned_to, ticket_contact_id = $contact_id, ticket_vendor_id = $vendor_id, ticket_asset_id = $asset_id WHERE ticket_id = $ticket_id"); + mysqli_query($mysqli,"UPDATE tickets SET ticket_subject = '$subject', ticket_priority = '$priority', ticket_details = '$details', ticket_vendor_ticket_number = '$vendor_ticket_number', ticket_contact_id = $contact_id, ticket_vendor_id = $vendor_id, ticket_asset_id = $asset_id WHERE ticket_id = $ticket_id"); // Add Watchers if (!empty($_POST['watchers'])) { @@ -158,12 +162,16 @@ if (isset($_POST['assign_ticket'])) { // POST variables $ticket_id = intval($_POST['ticket_id']); $assigned_to = intval($_POST['assigned_to']); + $ticket_status = sanitizeInput($_POST['ticket_status']); + if($ticket_status == 'Pending-Assignment' && $assigned_to > 0){ + $ticket_status = 'Assigned'; + } // Allow for un-assigning tickets if ($assigned_to == 0) { $ticket_reply = "Ticket unassigned."; $agent_name = "No One"; - + $ticket_status = "Pending-Assignment"; } else { // Get & verify assigned agent details $agent_details_sql = mysqli_query($mysqli, "SELECT user_name, user_email FROM users LEFT JOIN user_settings ON users.user_id = user_settings.user_id WHERE users.user_id = $assigned_to AND user_settings.user_role > 1"); @@ -209,7 +217,7 @@ if (isset($_POST['assign_ticket'])) { } // Update ticket & insert reply - mysqli_query($mysqli,"UPDATE tickets SET ticket_assigned_to = $assigned_to WHERE ticket_id = $ticket_id"); + mysqli_query($mysqli,"UPDATE tickets SET ticket_assigned_to = $assigned_to, ticket_status = '$ticket_status' WHERE ticket_id = $ticket_id"); mysqli_query($mysqli,"INSERT INTO ticket_replies SET ticket_reply = '$ticket_reply_escaped', ticket_reply_type = 'Internal', ticket_reply_time_worked = '00:01:00', ticket_reply_by = $session_user_id, ticket_reply_ticket_id = $ticket_id"); diff --git a/ticket.php b/ticket.php index 8e2540d3..92b396c5 100644 --- a/ticket.php +++ b/ticket.php @@ -726,6 +726,7 @@ if (isset($_GET['ticket_id'])) {
+
diff --git a/ticket_edit_modal.php b/ticket_edit_modal.php index c9b47c5f..bb4552fa 100644 --- a/ticket_edit_modal.php +++ b/ticket_edit_modal.php @@ -62,35 +62,6 @@
-
- -
-
- -
- -
-
-
diff --git a/tickets.php b/tickets.php index 6294d223..e4a5d92a 100644 --- a/tickets.php +++ b/tickets.php @@ -307,10 +307,14 @@ $user_active_assigned_tickets = intval($row['total_tickets_assigned']); $contact_phone = formatPhoneNumber($row['contact_phone']); $contact_extension = nullable_htmlentities($row['contact_extension']); $contact_mobile = formatPhoneNumber($row['contact_mobile']); - if ($ticket_status == "Open") { + if ($ticket_status == "Pending-Assignment") { + $ticket_status_color = "danger"; + } elseif ($ticket_status == "Assigned") { $ticket_status_color = "primary"; - } elseif ($ticket_status == "Working") { + } elseif ($ticket_status == "In-Progress") { $ticket_status_color = "success"; + } elseif ($ticket_status == "Closed") { + $ticket_status_color = "dark"; } else{ $ticket_status_color = "secondary"; }