From e2733fecb745b75ff8a792251bfee66e8920ff81 Mon Sep 17 00:00:00 2001 From: johnnyq Date: Mon, 25 Mar 2024 16:43:56 -0400 Subject: [PATCH] Some initial beginnings of task management in tickets, currently you can create and delete them more to come --- post.php | 4 ++-- post/tasks.php | 55 +++++++++++++++++++++++++++++++++++++++++++++ task_add_modal.php | 45 +++++++++++++++++++++++++++++++++++++ task_edit_modal.php | 45 +++++++++++++++++++++++++++++++++++++ ticket.php | 36 +++++++++++++++++++++++++++++ 5 files changed, 183 insertions(+), 2 deletions(-) create mode 100644 post/tasks.php create mode 100644 task_add_modal.php create mode 100644 task_edit_modal.php diff --git a/post.php b/post.php index 40a878d0..6ec69559 100644 --- a/post.php +++ b/post.php @@ -71,6 +71,8 @@ require_once "post/tax.php"; require_once "post/ticket.php"; +require_once "post/tasks.php"; + require_once "post/transfer.php"; require_once "post/trip.php"; @@ -85,5 +87,3 @@ require_once "post/ai.php"; require_once "post/misc.php"; - -?> diff --git a/post/tasks.php b/post/tasks.php new file mode 100644 index 00000000..4346d405 --- /dev/null +++ b/post/tasks.php @@ -0,0 +1,55 @@ +$name"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); +} + + +if (isset($_GET['delete_task'])) { + + validateTechRole(); + + $task_id = intval($_GET['delete_task']); + + // Get Client ID, task name from tasks and tickets using the task_id + $sql = mysqli_query($mysqli, "SELECT * FROM tasks LEFT JOIN tickets ON ticket_id = task_ticket_id"); + $row = mysqli_fetch_array($sql); + $client_id = intval($row['ticket_client_id']); + $task_name = sanitizeInput($row['task_name']); + + mysqli_query($mysqli, "DELETE FROM tasks WHERE task_id = $task_id"); + + // Logging + mysqli_query($mysqli, "INSERT INTO logs SET log_type = 'Task', log_action = 'Delete', log_description = '$session_name deleted task $task_name', log_ip = '$session_ip', log_user_agent = '$session_user_agent', log_client_id = $client_id, log_user_id = $session_user_id, log_entity_id = $task_id"); + + $_SESSION['alert_type'] = "error"; + $_SESSION['alert_message'] = "You created Task $task_name"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); +} \ No newline at end of file diff --git a/task_add_modal.php b/task_add_modal.php new file mode 100644 index 00000000..4f0b3317 --- /dev/null +++ b/task_add_modal.php @@ -0,0 +1,45 @@ + diff --git a/task_edit_modal.php b/task_edit_modal.php new file mode 100644 index 00000000..96a6a711 --- /dev/null +++ b/task_edit_modal.php @@ -0,0 +1,45 @@ + diff --git a/ticket.php b/ticket.php index 2b030fd7..da8f92ab 100644 --- a/ticket.php +++ b/ticket.php @@ -237,6 +237,10 @@ if (isset($_GET['ticket_id'])) { AND ticket_attachment_ticket_id = $ticket_id" ); + + // Get Tasks + $sql_tasks = mysqli_query( $mysqli, "SELECT * FROM tasks WHERE task_ticket_id = $ticket_id ORDER BY task_created_at ASC"); + ?> @@ -264,6 +268,9 @@ if (isset($_GET['ticket_id'])) { Edit + + Create Task + Merge @@ -933,6 +940,33 @@ if (isset($_GET['ticket_id'])) { + + + 0) { ?> +
+
Tasks
+ + +
+ + + + + + +
+ + +
+ + + @@ -956,6 +990,8 @@ if (isset($_GET['ticket_id'])) { require_once "ticket_merge_modal.php"; + require_once "task_add_modal.php"; + if ($config_module_enable_accounting) { require_once "ticket_edit_billable_modal.php"; require_once "ticket_invoice_add_modal.php";