set('Cache.DefinitionImpl', null); // Disable cache by setting a non-existent directory or an invalid one $purifier_config->set('URI.AllowedSchemes', ['data' => true, 'src' => true, 'http' => true, 'https' => true]); $purifier = new HTMLPurifier($purifier_config); if (!isset($_GET['ticket_id'], $_GET['url_key'])) { echo "

Oops, something went wrong! Please raise a ticket if you believe this is an error.

"; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.php'; exit(); } // Company info $company_sql_row = mysqli_fetch_array(mysqli_query($mysqli, " SELECT company_phone, company_phone_country_code, company_website FROM companies, settings WHERE companies.company_id = settings.company_id AND companies.company_id = 1" )); $company_phone_country_code = nullable_htmlentities($company_sql_row['company_phone_country_code']); $company_phone = nullable_htmlentities(formatPhoneNumber($company_sql_row['company_phone'], $company_phone_country_code)); $company_website = nullable_htmlentities($company_sql_row['company_website']); $url_key = sanitizeInput($_GET['url_key']); $ticket_id = intval($_GET['ticket_id']); $ticket_sql = mysqli_query($mysqli, "SELECT * FROM tickets LEFT JOIN users on ticket_assigned_to = user_id LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id WHERE ticket_id = $ticket_id AND ticket_url_key = '$url_key'" ); if (mysqli_num_rows($ticket_sql) !== 1) { // Invalid invoice/key echo "

Oops, something went wrong! Please raise a ticket if you believe this is an error.

"; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.php'; exit(); } $ticket_row = mysqli_fetch_array($ticket_sql); if ($ticket_row) { $ticket_prefix = nullable_htmlentities($ticket_row['ticket_prefix']); $ticket_number = intval($ticket_row['ticket_number']); $ticket_status = nullable_htmlentities($ticket_row['ticket_status_name']); $ticket_priority = nullable_htmlentities($ticket_row['ticket_priority']); $ticket_subject = nullable_htmlentities($ticket_row['ticket_subject']); $ticket_details = $purifier->purify($ticket_row['ticket_details']); $ticket_assigned_to = nullable_htmlentities($ticket_row['user_name']); $ticket_resolved_at = nullable_htmlentities($ticket_row['ticket_resolved_at']); $ticket_closed_at = nullable_htmlentities($ticket_row['ticket_closed_at']); $ticket_feedback = nullable_htmlentities($ticket_row['ticket_feedback']); ?>

Ticket

Subject:

State:
Priority:
Assigned to:


Please log in or reply to the ticket via email to respond

Your ticket has been resolved


Ticket closed. Please rate your ticket


Rated -- Thanks for your feedback!



purify($row['ticket_reply']); $ticket_reply_created_at = nullable_htmlentities($row['ticket_reply_created_at']); $ticket_reply_updated_at = nullable_htmlentities($row['ticket_reply_updated_at']); $ticket_reply_by = intval($row['ticket_reply_by']); $ticket_reply_type = $row['ticket_reply_type']; if ($ticket_reply_type == "Client") { $ticket_reply_by_display = nullable_htmlentities($row['contact_name']); $user_initials = initials($row['contact_name']); $user_avatar = $row['contact_photo']; $avatar_link = "../uploads/clients/$ticket_reply_by/$user_avatar"; } else { $ticket_reply_by_display = nullable_htmlentities($row['user_name']); $user_id = intval($row['user_id']); $user_avatar = $row['user_avatar']; $user_initials = initials($row['user_name']); $avatar_link = "../uploads/users/$user_id/$user_avatar"; } ?>
mb-3">

User Avatar