diff --git a/print.php b/print.php index cbe98dad..ebd4b35f 100644 --- a/print.php +++ b/print.php @@ -55,6 +55,9 @@ $trackingID = hesk_cleanID('p_track') or die("$hesklang[int_error]: $hesklang[no /* Connect to database */ hesk_dbConnect(); +// Load custom fields +require_once(HESK_PATH . 'inc/custom_fields.inc.php'); + // Perform additional checks for customers if (empty($_SESSION['id'])) { // Are we in maintenance mode? @@ -218,15 +221,17 @@ echo ''; $num_cols = 0; echo '
' . $newMessage . '
'; } -echo '' . $newMessage . '
'; + // Print replies while ($reply = hesk_dbFetchAssoc($res)) { diff --git a/reply_ticket.php b/reply_ticket.php index 07829970..20f925b1 100644 --- a/reply_ticket.php +++ b/reply_ticket.php @@ -185,17 +185,19 @@ if ($hesk_settings['attachments']['use'] && !empty($attachments)) { } // If staff hasn't replied yet, don't change the status; otherwise set it to the status for customer replies. -$customerReplyStatusQuery = 'SELECT `ID` FROM `' . hesk_dbEscape($hesk_settings['db_pfix']) . 'statuses` WHERE `IsCustomerReplyStatus` = 1'; -$defaultNewTicketStatusQuery = 'SELECT `ID` FROM `' . hesk_dbEscape($hesk_settings['db_pfix']) . 'statuses` WHERE `IsNewTicketStatus` = 1'; -$newStatusRs = hesk_dbQuery($customerReplyStatusQuery); -$newStatus = hesk_dbFetchAssoc($newStatusRs); -$defaultNewTicketStatusRs = hesk_dbQuery($defaultNewTicketStatusQuery); -$defaultNewTicketStatus = hesk_dbFetchAssoc($defaultNewTicketStatusRs); - -$ticket['status'] = $ticket['status'] == $defaultNewTicketStatus['ID'] ? $defaultNewTicketStatus['ID'] : $newStatus['ID']; +if (hesk_can_customer_change_status($ticket['status'])) { + $customerReplyStatusQuery = 'SELECT `ID` FROM `' . hesk_dbEscape($hesk_settings['db_pfix']) . 'statuses` WHERE `IsCustomerReplyStatus` = 1'; + $defaultNewTicketStatusQuery = 'SELECT `ID` FROM `' . hesk_dbEscape($hesk_settings['db_pfix']) . 'statuses` WHERE `IsNewTicketStatus` = 1'; + $newStatusRs = hesk_dbQuery($customerReplyStatusQuery); + $newStatus = hesk_dbFetchAssoc($newStatusRs); + $defaultNewTicketStatusRs = hesk_dbQuery($defaultNewTicketStatusQuery); + $defaultNewTicketStatus = hesk_dbFetchAssoc($defaultNewTicketStatusRs); + + $ticket['status'] = $ticket['status'] == $defaultNewTicketStatus['ID'] ? $defaultNewTicketStatus['ID'] : $newStatus['ID']; +} /* Update ticket as necessary */ -$res = hesk_dbQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` SET `lastchange`=NOW(), `status`='{$ticket['status']}', `replies`=`replies`+1, `lastreplier`='0' WHERE `id`='{$ticket['id']}' LIMIT 1"); +$res = hesk_dbQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` SET `lastchange`=NOW(), `status`='{$ticket['status']}', `replies`=`replies`+1, `lastreplier`='0' WHERE `id`='{$ticket['id']}'"); // Insert reply into database $modsForHesk_settings = mfh_getSettings();