mirror of
https://github.com/itflow-org/itflow
synced 2026-02-28 02:44:53 +00:00
Ticket Statuses
Standardize on 5 consistent ticket states:- - New (Red/Danger) - Open (Blue/Primary) - On Hold (Green/Success) - Auto Close (Dark/black) - Closed (Dark/black) Update parts of the app where these have deviated from, as they have not been updated everywhere. Other states may be configurable in future via custom fields.
This commit is contained in:
@@ -11,9 +11,9 @@ if (isset($_POST['add_ticket'])) {
|
||||
$client_id = intval($_POST['client']);
|
||||
$assigned_to = intval($_POST['assigned_to']);
|
||||
if ($assigned_to == 0) {
|
||||
$ticket_status = 'Pending-Assignment';
|
||||
$ticket_status = 'New';
|
||||
} else {
|
||||
$ticket_status = 'Assigned';
|
||||
$ticket_status = 'Open';
|
||||
}
|
||||
$contact = intval($_POST['contact']);
|
||||
$subject = sanitizeInput($_POST['subject']);
|
||||
@@ -329,15 +329,14 @@ if (isset($_POST['assign_ticket'])) {
|
||||
$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';
|
||||
if ($ticket_status == 'New' && $assigned_to !== 0) {
|
||||
$ticket_status = 'Open';
|
||||
}
|
||||
|
||||
// Allow for un-assigning tickets
|
||||
if ($assigned_to == 0) {
|
||||
$ticket_reply = "Ticket unassigned, pending re-assignment.";
|
||||
$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");
|
||||
@@ -356,13 +355,14 @@ if (isset($_POST['assign_ticket'])) {
|
||||
}
|
||||
|
||||
// Get & verify ticket details
|
||||
$ticket_details_sql = mysqli_query($mysqli, "SELECT ticket_prefix, ticket_number, ticket_subject, ticket_client_id FROM tickets WHERE ticket_id = '$ticket_id' AND ticket_status != 'Closed'");
|
||||
$ticket_details_sql = mysqli_query($mysqli, "SELECT ticket_prefix, ticket_number, ticket_subject, ticket_client_id, client_name FROM tickets LEFT JOIN clients ON ticket_client_id = client_id WHERE ticket_id = '$ticket_id' AND ticket_status != 'Closed'");
|
||||
$ticket_details = mysqli_fetch_array($ticket_details_sql);
|
||||
|
||||
$ticket_prefix = sanitizeInput($ticket_details['ticket_prefix']);
|
||||
$ticket_number = intval($ticket_details['ticket_number']);
|
||||
$ticket_subject = sanitizeInput($ticket_details['ticket_subject']);
|
||||
$client_id = intval($ticket_details['ticket_client_id']);
|
||||
$client_name = sanitizeInput($ticket_details['client_name']);
|
||||
|
||||
if (!$ticket_subject) {
|
||||
$_SESSION['alert_type'] = "error";
|
||||
@@ -394,8 +394,8 @@ if (isset($_POST['assign_ticket'])) {
|
||||
$config_ticket_from_email = sanitizeInput($config_ticket_from_email);
|
||||
$company_name = sanitizeInput($session_company_name);
|
||||
|
||||
$subject = "$config_app_name - ticket $ticket_prefix$ticket_number assigned to you";
|
||||
$body = "Hi $agent_name, <br><br>A ticket has been assigned to you!<br><br>Ticket Number: $ticket_prefix$ticket_number<br> Subject: $ticket_subject <br><br>Thanks, <br>$session_name<br>$company_name";
|
||||
$subject = "$config_app_name - Ticket $ticket_prefix$ticket_number assigned to you - $ticket_subject";
|
||||
$body = "Hi $agent_name, <br><br>A ticket has been assigned to you!<br><br>Client: $client_name<br>Ticket Number: $ticket_prefix$ticket_number<br> Subject: $ticket_subject<br><br>https://$config_base_url/ticket.php?ticket_id=$ticket_id <br><br>Thanks, <br>$session_name<br>$company_name";
|
||||
|
||||
// Email Ticket Agent
|
||||
// Queue Mail
|
||||
@@ -477,15 +477,14 @@ if (isset($_POST['bulk_assign_ticket'])) {
|
||||
$ticket_subject = sanitizeInput($row['ticket_subject']);
|
||||
$client_id = intval($row['ticket_client_id']);
|
||||
|
||||
if ($ticket_status == 'Pending-Assignment' && $assign_to > 0) {
|
||||
$ticket_status = 'Assigned';
|
||||
if ($ticket_status == 'New' && $assigned_to !== 0) {
|
||||
$ticket_status = 'Open';
|
||||
}
|
||||
|
||||
// Allow for un-assigning tickets
|
||||
if ($assign_to == 0) {
|
||||
$ticket_reply = "Ticket unassigned, pending re-assignment.";
|
||||
$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 = $assign_to AND user_settings.user_role > 1");
|
||||
@@ -1437,8 +1436,8 @@ if (isset($_POST['set_billable_status'])) {
|
||||
mysqli_query(
|
||||
$mysqli,
|
||||
"UPDATE tickets SET
|
||||
ticket_billable = '$billable_status'
|
||||
WHERE ticket_id = $ticket_id"
|
||||
ticket_billable = '$billable_status'
|
||||
WHERE ticket_id = $ticket_id"
|
||||
);
|
||||
|
||||
//Logging
|
||||
@@ -1475,7 +1474,7 @@ if (isset($_POST['edit_ticket_schedule'])) {
|
||||
"UPDATE tickets SET
|
||||
ticket_schedule = '$schedule',
|
||||
ticket_onsite = '$onsite',
|
||||
ticket_status = 'Scheduled'
|
||||
ticket_status = 'On Hold'
|
||||
WHERE ticket_id = $ticket_id"
|
||||
);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user