From bc9529c4885c41c597e5cdadd538569a23898ed4 Mon Sep 17 00:00:00 2001 From: Marcus Hill Date: Sat, 28 Jun 2025 15:49:17 +0100 Subject: [PATCH] Client Portal - Allow client choose asset during ticket creation --- client/post.php | 3 ++- client/ticket_add.php | 27 +++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/client/post.php b/client/post.php index 03ec1773..59381157 100644 --- a/client/post.php +++ b/client/post.php @@ -15,6 +15,7 @@ if (isset($_POST['add_ticket'])) { $subject = sanitizeInput($_POST['subject']); $details = mysqli_real_escape_string($mysqli, ($_POST['details'])); $category = intval($_POST['category']); + $asset = intval($_POST['asset']); // Get settings from get_settings.php $config_ticket_prefix = sanitizeInput($config_ticket_prefix); @@ -38,7 +39,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_source = 'Portal', ticket_category = $category, ticket_subject = '$subject', ticket_details = '$details', ticket_priority = '$priority', ticket_status = 1, ticket_billable = $config_ticket_default_billable, ticket_created_by = $session_user_id, ticket_contact_id = $session_contact_id, ticket_url_key = '$url_key', ticket_client_id = $session_client_id"); + mysqli_query($mysqli, "INSERT INTO tickets SET ticket_prefix = '$config_ticket_prefix', ticket_number = $ticket_number, ticket_source = 'Portal', ticket_category = $category, ticket_subject = '$subject', ticket_details = '$details', ticket_priority = '$priority', ticket_status = 1, ticket_billable = $config_ticket_default_billable, ticket_created_by = $session_user_id, ticket_contact_id = $session_contact_id, ticket_asset_id = $asset, ticket_url_key = '$url_key', ticket_client_id = $session_client_id"); $ticket_id = mysqli_insert_id($mysqli); // Notify agent DL of the new ticket, if populated with a valid email diff --git a/client/ticket_add.php b/client/ticket_add.php index ceffca1c..6037f5b1 100644 --- a/client/ticket_add.php +++ b/client/ticket_add.php @@ -6,6 +6,9 @@ require_once 'includes/inc_all.php'; +// Allow clients to select a related asset when raising a ticket +$sql_assets = mysqli_query($mysqli, "SELECT asset_id, asset_name, asset_type FROM assets WHERE asset_contact_id = $session_contact_id AND asset_client_id = $session_client_id AND asset_archived_at IS NULL ORDER BY asset_name ASC"); + ?>