Merge pull request #318 from mkoch227/better-html-rendering

Only render HTML if the ticket was created with it enabled
merge-requests/2/head
Mike Koch 9 years ago
commit c630fbf454

@ -211,13 +211,14 @@ if ($hesk_settings['attachments']['use'] && !empty($attachments))
} }
// Add reply // Add reply
$html = $modsForHesk_settings['rich_text_for_tickets'];
if ($submit_as_customer) if ($submit_as_customer)
{ {
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`) VALUES ('".intval($replyto)."','".hesk_dbEscape(addslashes($ticket['name']))."','".hesk_dbEscape($message."<br /><br /><i>{$hesklang['creb']} {$_SESSION['name']}</i>")."',NOW(),'".hesk_dbEscape($myattachments)."')"); hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`,`html`) VALUES ('".intval($replyto)."','".hesk_dbEscape(addslashes($ticket['name']))."','".hesk_dbEscape($message."<br /><br /><i>{$hesklang['creb']} {$_SESSION['name']}</i>")."',NOW(),'".hesk_dbEscape($myattachments)."', '".$html."')");
} }
else else
{ {
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`,`staffid`) VALUES ('".intval($replyto)."','".hesk_dbEscape(addslashes($_SESSION['name']))."','".hesk_dbEscape($message)."',NOW(),'".hesk_dbEscape($myattachments)."','".intval($_SESSION['id'])."')"); hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`,`staffid`,`html`) VALUES ('".intval($replyto)."','".hesk_dbEscape(addslashes($_SESSION['name']))."','".hesk_dbEscape($message)."',NOW(),'".hesk_dbEscape($myattachments)."','".intval($_SESSION['id'])."', '".$html."')");
} }
/* Track ticket status changes for history */ /* Track ticket status changes for history */

@ -279,6 +279,8 @@ if (!$modsForHesk_settings['rich_text_for_tickets']) {
$tmpvar['latitude'] = hesk_POST('latitude', 'E-4'); $tmpvar['latitude'] = hesk_POST('latitude', 'E-4');
$tmpvar['longitude'] = hesk_POST('longitude', 'E-4'); $tmpvar['longitude'] = hesk_POST('longitude', 'E-4');
$tmpvar['html'] = $modsForHesk_settings['rich_text_for_tickets'];
// Insert ticket to database // Insert ticket to database
$ticket = hesk_newTicket($tmpvar); $ticket = hesk_newTicket($tmpvar);

@ -1399,7 +1399,7 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
<!-- Message --> <!-- Message -->
<p><b><?php echo $hesklang['message']; ?>:</b></p> <p><b><?php echo $hesklang['message']; ?>:</b></p>
<div class="message"> <div class="message">
<?php if ($modsForHesk_settings['rich_text_for_tickets']) { <?php if ($ticket['html']) {
echo hesk_html_entity_decode($ticket['message']); echo hesk_html_entity_decode($ticket['message']);
} else { } else {
echo $ticket['message']; echo $ticket['message'];
@ -1697,7 +1697,7 @@ function hesk_printTicketReplies() {
</div> </div>
<div class="ticketMessageBottom"> <div class="ticketMessageBottom">
<p><b><?php echo $hesklang['message']; ?>:</b></p> <p><b><?php echo $hesklang['message']; ?>:</b></p>
<p><?php if ($modsForHesk_settings['rich_text_for_tickets']) { <p><?php if ($reply['html']) {
echo hesk_html_entity_decode($reply['message']); echo hesk_html_entity_decode($reply['message']);
} else { } else {
echo $reply['message']; echo $reply['message'];

@ -99,7 +99,8 @@ function hesk_newTicket($ticket, $isVerified = true)
`custom20`, `custom20`,
`status`, `status`,
`latitude`, `latitude`,
`longitude` `longitude`,
`html`
) )
VALUES VALUES
( (
@ -142,7 +143,8 @@ function hesk_newTicket($ticket, $isVerified = true)
'".hesk_dbEscape($ticket['custom20'])."', '".hesk_dbEscape($ticket['custom20'])."',
'".intval($ticket['status'])."', '".intval($ticket['status'])."',
'".hesk_dbEscape($ticket['latitude'])."', '".hesk_dbEscape($ticket['latitude'])."',
'".hesk_dbEscape($ticket['longitude'])."' '".hesk_dbEscape($ticket['longitude'])."',
'".hesk_dbEscape($ticket['html'])."'
) )
"); ");

@ -591,6 +591,8 @@ function execute240Scripts() {
// Process attachment improvement tables // Process attachment improvement tables
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0"); executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0");
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."kb_attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0"); executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."kb_attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0");
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD COLUMN `html` ENUM('0','1') NOT NULL DEFAULT '0'");
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` ADD COLUMN `html` ENUM('0','1') NOT NULL DEFAULT '0'");
executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '2.4.0' WHERE `Key` = 'modsForHeskVersion'"); executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '2.4.0' WHERE `Key` = 'modsForHeskVersion'");
} }

@ -243,7 +243,7 @@ echo '</table><br>';
// Print initial ticket message // Print initial ticket message
$newMessage = hesk_unhortenUrl($ticket['message']); $newMessage = hesk_unhortenUrl($ticket['message']);
if ($modsForHesk_settings['rich_text_for_tickets']) if ($ticket['html'])
{ {
$newMessage = hesk_html_entity_decode($newMessage); $newMessage = hesk_html_entity_decode($newMessage);
} }
@ -254,7 +254,7 @@ while ($reply = hesk_dbFetchAssoc($res))
{ {
$reply['dt'] = hesk_date($reply['dt'], true); $reply['dt'] = hesk_date($reply['dt'], true);
$theReply = hesk_unhortenUrl($reply['message']); $theReply = hesk_unhortenUrl($reply['message']);
if ($modsForHesk_settings['rich_text_for_tickets']) { if ($reply['html']) {
$theReply = hesk_html_entity_decode($theReply); $theReply = hesk_html_entity_decode($theReply);
} }

@ -37,6 +37,7 @@ define('HESK_PATH','./');
/* Get all the required files and functions */ /* Get all the required files and functions */
require(HESK_PATH . 'hesk_settings.inc.php'); require(HESK_PATH . 'hesk_settings.inc.php');
require(HESK_PATH . 'modsForHesk_settings.inc.php');
require(HESK_PATH . 'inc/common.inc.php'); require(HESK_PATH . 'inc/common.inc.php');
// Are we in maintenance mode? // Are we in maintenance mode?
@ -204,7 +205,8 @@ $ticket['status'] = $ticket['status'] == $defaultNewTicketStatus['ID'] ? $defaul
$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']}' LIMIT 1");
// Insert reply into database // Insert reply into database
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`) VALUES ({$ticket['id']},'".hesk_dbEscape($ticket['name'])."','".hesk_dbEscape($message)."',NOW(),'".hesk_dbEscape($myattachments)."')"); $html = $modsForHesk_settings['rich_text_for_tickets'];
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."replies` (`replyto`,`name`,`message`,`dt`,`attachments`, `html`) VALUES ({$ticket['id']},'".hesk_dbEscape($ticket['name'])."','".hesk_dbEscape($message)."',NOW(),'".hesk_dbEscape($myattachments)."','".$html."')");
/*** Need to notify any staff? ***/ /*** Need to notify any staff? ***/

@ -447,6 +447,9 @@ if ($hesk_settings['attachments']['use'] && ! empty($attachments) )
$tmpvar['latitude'] = hesk_POST('latitude'); $tmpvar['latitude'] = hesk_POST('latitude');
$tmpvar['longitude'] = hesk_POST('longitude'); $tmpvar['longitude'] = hesk_POST('longitude');
// Set html
$tmpvar['html'] = $modsForHesk_settings['rich_text_for_tickets'];
// Should the helpdesk validate emails? // Should the helpdesk validate emails?
$createTicket = true; $createTicket = true;
if ($modsForHesk_settings['customer_email_verification_required']) if ($modsForHesk_settings['customer_email_verification_required'])

@ -381,7 +381,14 @@ if (!$show['show']) {
<div class="ticketMessageBottom"> <div class="ticketMessageBottom">
<!-- Message --> <!-- Message -->
<p><b><?php echo $hesklang['message']; ?>:</b></p> <p><b><?php echo $hesklang['message']; ?>:</b></p>
<div class="message"><?php echo hesk_html_entity_decode($ticket['message']); ?></div> <div class="message">
<?php if ($ticket['html']) {
echo hesk_html_entity_decode($ticket['message']);
} else {
echo $ticket['message'];
}
?>
</div>
</div> </div>
<div class="ticketMessageTop"> <div class="ticketMessageTop">
<!-- Custom Fields after Message --> <!-- Custom Fields after Message -->
@ -724,7 +731,15 @@ function hesk_printCustomerTicketReplies()
<div class="ticketMessageBottom"> <div class="ticketMessageBottom">
<!-- Message --> <!-- Message -->
<p><b><?php echo $hesklang['message']; ?>:</b></p> <p><b><?php echo $hesklang['message']; ?>:</b></p>
<div class="message"><?php echo hesk_html_entity_decode($reply['message']); ?></div> <div class="message">
<?php
if ($reply['html']) {
echo hesk_html_entity_decode($reply['message']);
} else {
echo $reply['message'];
}
?>
</div>
</div> </div>
<div class="ticketMessageTop"> <div class="ticketMessageTop">
<?php mfh_listAttachments($reply['attachments'],$i,false);?> <?php mfh_listAttachments($reply['attachments'],$i,false);?>

Loading…
Cancel
Save