2015-01-15 17:01:11 -05:00
< ? php
2016-11-16 21:16:25 -05:00
/**
*
* This file is part of HESK - PHP Help Desk Software .
*
* ( c ) Copyright Klemen Stirn . All rights reserved .
2016-11-18 12:57:17 -05:00
* https :// www . hesk . com
2016-11-16 21:16:25 -05:00
*
* For the full copyright and license agreement information visit
2016-11-18 12:57:17 -05:00
* https :// www . hesk . com / eula . php
2016-11-16 21:16:25 -05:00
*
*/
2015-09-12 00:46:46 -04:00
define ( 'IN_SCRIPT' , 1 );
define ( 'HESK_PATH' , '../' );
2016-11-27 01:35:08 -05:00
define ( 'MFH_PAGE_LAYOUT' , 'TOP_ONLY' );
2015-01-15 17:01:11 -05:00
/* Get all the required files and functions */
require ( HESK_PATH . 'hesk_settings.inc.php' );
require ( HESK_PATH . 'inc/common.inc.php' );
require ( HESK_PATH . 'inc/admin_functions.inc.php' );
2016-09-27 22:07:38 -04:00
require ( HESK_PATH . 'inc/mail_functions.inc.php' );
2015-01-15 17:01:11 -05:00
hesk_load_database_functions ();
hesk_session_start ();
hesk_dbConnect ();
hesk_isLoggedIn ();
/* Check permissions for this feature */
hesk_checkPermission ( 'can_view_tickets' );
// Ticket ID
2015-09-12 00:46:46 -04:00
$trackingID = hesk_cleanID () or die ( $hesklang [ 'int_error' ] . ': ' . $hesklang [ 'no_trackID' ]);
2015-01-15 17:01:11 -05:00
// Note ID
2015-09-12 00:46:46 -04:00
$noteID = intval ( hesk_REQUEST ( 'note' )) or die ( $hesklang [ 'int_error' ] . ': ' . $hesklang [ 'mis_note' ]);
2015-01-15 17:01:11 -05:00
// Get ticket info
2015-09-12 00:46:46 -04:00
$result = hesk_dbQuery ( " SELECT `id` FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " tickets` WHERE `trackid`=' " . hesk_dbEscape ( $trackingID ) . " ' LIMIT 1 " );
if ( hesk_dbNumRows ( $result ) != 1 ) {
hesk_error ( $hesklang [ 'ticket_not_found' ]);
2015-01-15 17:01:11 -05:00
}
$ticket = hesk_dbFetchAssoc ( $result );
// Get note info
2015-09-12 00:46:46 -04:00
$result = hesk_dbQuery ( " SELECT * FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " notes` WHERE `id`= { $noteID } " );
if ( hesk_dbNumRows ( $result ) != 1 ) {
hesk_error ( $hesklang [ 'no_note' ]);
2015-01-15 17:01:11 -05:00
}
$note = hesk_dbFetchAssoc ( $result );
// Make sure the note matches the ticket and the user has permission to edit it
2015-09-12 00:46:46 -04:00
if ( $note [ 'ticket' ] != $ticket [ 'id' ] || ( ! hesk_checkPermission ( 'can_del_notes' , 0 ) && $note [ 'who' ] != $_SESSION [ 'id' ])) {
hesk_error ( $hesklang [ 'perm_deny' ]);
2015-01-15 17:01:11 -05:00
}
// Save changes?
2015-09-12 00:46:46 -04:00
if ( isset ( $_POST [ 'save' ])) {
// A security check
hesk_token_check ( 'POST' );
// Get message
$tmpvar [ 'message' ] = nl2br ( hesk_makeURL ( hesk_input ( hesk_POST ( 'message' ))));
// If we have message or attachments do the update
if ( strlen ( $tmpvar [ 'message' ]) || strlen ( $note [ 'attachments' ])) {
hesk_dbQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " notes` SET `message`=' " . hesk_dbEscape ( $tmpvar [ 'message' ]) . " ' WHERE `id`= { $noteID } " );
hesk_process_messages ( $hesklang [ 'ednote2' ], 'admin_ticket.php?track=' . $trackingID . '&Refresh=' . mt_rand ( 10000 , 99999 ), 'SUCCESS' );
} // If not, delete the note
else {
hesk_dbQuery ( " DELETE FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " notes` WHERE `id`= { $noteID } " );
header ( 'Location: admin_ticket.php?track=' . $trackingID . '&Refresh=' . mt_rand ( 10000 , 99999 ));
exit ();
}
2015-01-15 17:01:11 -05:00
}
2015-09-12 00:46:46 -04:00
$note [ 'message' ] = hesk_msgToPlain ( $note [ 'message' ], 0 , 0 );
2015-01-15 17:01:11 -05:00
/* Print header */
require_once ( HESK_PATH . 'inc/headerAdmin.inc.php' );
/* Print admin navigation */
require_once ( HESK_PATH . 'inc/show_admin_nav.inc.php' );
?>
< ol class = " breadcrumb " >
2015-09-12 00:46:46 -04:00
< li >
< a href = " admin_ticket.php?track=<?php echo $trackingID ; ?>&Refresh=<?php echo mt_rand(10000, 99999); ?> " >< ? php echo $hesklang [ 'ticket' ] . ' ' . $trackingID ; ?> </a>
</ li >
2015-01-15 17:01:11 -05:00
< li class = " active " >< ? php echo $hesklang [ 'ednote' ]; ?> </li>
</ ol >
2016-09-27 22:07:38 -04:00
< section class = " content " >
< div class = " box " >
< div class = " box-header with-border " >
< h1 class = " box-title " >
< ? php echo $hesklang [ 'ednote' ]; ?>
</ h1 >
< div class = " box-tools pull-right " >
< button type = " button " class = " btn btn-box-tool " data - widget = " collapse " >
< i class = " fa fa-minus " ></ i >
</ button >
</ div >
</ div >
< div class = " box-body " >
< form method = " post " action = " edit_note.php " name = " form1 " class = " form-horizontal " role = " form " >
< div class = " form-group " >
< label for = " message " class = " col-md-2 control-label " >< ? php echo $hesklang [ 'message' ]; ?> </label>
2015-09-12 00:46:46 -04:00
2016-09-27 22:07:38 -04:00
< div class = " col-md-10 " >
2015-09-12 00:46:46 -04:00
< textarea name = " message " class = " form-control " rows = " 12 "
cols = " 60 " >< ? php echo $note [ 'message' ]; ?> </textarea>
2016-09-27 22:07:38 -04:00
</ div >
2015-01-15 17:01:11 -05:00
</ div >
2016-09-27 22:07:38 -04:00
< div class = " form-group " >
< div class = " col-md-10 col-md-offset-2 " >
< input type = " hidden " name = " save " value = " 1 " >
< input type = " hidden " name = " track " value = " <?php echo $trackingID ; ?> " >
< input type = " hidden " name = " token " value = " <?php hesk_token_echo(); ?> " >
< input type = " hidden " name = " note " value = " <?php echo $noteID ; ?> " >
< div class = " btn-group " >
< input type = " submit " value = " <?php echo $hesklang['save_changes'] ; ?> " class = " btn btn-primary " >
< a href = " javascript:history.go(-1) " class = " btn btn-default " >< ? php echo $hesklang [ 'back' ]; ?> </a>
</ div >
</ div >
2015-01-15 17:01:11 -05:00
</ div >
2016-09-27 22:07:38 -04:00
</ form >
</ div >
2015-01-15 17:01:11 -05:00
</ div >
2016-09-27 22:07:38 -04:00
</ section >
2015-01-15 17:01:11 -05:00
< ? php
require_once ( HESK_PATH . 'inc/footer.inc.php' );
exit ();
?>