mirror of
https://github.com/Znote/ZnoteAAC.git
synced 2025-04-26 01:09:22 +02:00
147 lines
4.5 KiB
PHP
147 lines
4.5 KiB
PHP
<?php require_once 'engine/init.php'; include 'layout/overall/header.php';
|
|
protect_page();
|
|
admin_only($user_data);
|
|
|
|
// Declare as int
|
|
$view = (isset($_GET['view']) && (int)$_GET['view'] > 0) ? (int)$_GET['view'] : false;
|
|
if ($view !== false){
|
|
if (!empty($_POST['reply_text'])) {
|
|
sanitize($_POST['reply_text']);
|
|
|
|
// Save ticket reply on database
|
|
$query = array(
|
|
'tid' => $view,
|
|
'username'=> getValue($_POST['username']),
|
|
'message' => getValue($_POST['reply_text']),
|
|
'created' => time(),
|
|
);
|
|
$fields = '`'. implode('`, `', array_keys($query)) .'`';
|
|
$data = '\''. implode('\', \'', $query) .'\'';
|
|
|
|
mysql_insert("INSERT INTO `znote_tickets_replies` ($fields) VALUES ($data)");
|
|
mysql_update("UPDATE `znote_tickets` SET `status`='Staff-Reply' WHERE `id`='$view' LIMIT 1;");
|
|
|
|
} else if (!empty($_POST['admin_ticket_close'])) {
|
|
$ticketId = (int) $_POST['admin_ticket_id'];
|
|
mysql_update("UPDATE `znote_tickets` SET `status` = 'CLOSED' WHERE `id` ='$ticketId' LIMIT 1;");
|
|
|
|
} else if (!empty($_POST['admin_ticket_open'])) {
|
|
$ticketId = (int) $_POST['admin_ticket_id'];
|
|
mysql_update("UPDATE `znote_tickets` SET `status` = 'Open' WHERE `id` ='$ticketId' LIMIT 1;");
|
|
|
|
} else if (!empty($_POST['admin_ticket_delete'])) {
|
|
$ticketId = (int) $_POST['admin_ticket_id'];
|
|
mysql_delete("DELETE FROM `znote_tickets` WHERE `id`='$ticketId' LIMIT 1;");
|
|
header("Location: admin_helpdesk.php");
|
|
}
|
|
|
|
$ticketData = mysql_select_single("SELECT * FROM znote_tickets WHERE id='$view' LIMIT 1;");
|
|
?>
|
|
<h1>View Ticket #<?php echo $ticketData['id']; ?></h1>
|
|
<table class="znoteTable ThreadTable table table-striped">
|
|
<tr class="yellow">
|
|
<th>
|
|
<?php
|
|
echo getClock($ticketData['creation'], true);
|
|
?>
|
|
- Created by:
|
|
<?php
|
|
echo $ticketData['username'];
|
|
?>
|
|
</th>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<p><?php echo nl2br($ticketData['message']); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<?php
|
|
$replies = mysql_select_multi("SELECT * FROM znote_tickets_replies WHERE tid='$view' ORDER BY `created`;");
|
|
if ($replies !== false) {
|
|
foreach($replies as $reply) {
|
|
?>
|
|
<table class="znoteTable ThreadTable table table-striped">
|
|
<tr class="yellow">
|
|
<th>
|
|
<?php
|
|
echo getClock($reply['created'], true);
|
|
?>
|
|
- Posted by:
|
|
<?php
|
|
echo $reply['username'];
|
|
?>
|
|
</th>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<p><?php echo nl2br($reply['message']); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<?php
|
|
}
|
|
}
|
|
?>
|
|
|
|
<!-- Open/Close Ticket -->
|
|
<table class="znoteTable ThreadTable table table-striped">
|
|
<tr>
|
|
<td>
|
|
<form action="" method="post" align="center">
|
|
<input type="hidden" name="admin_ticket_id" value="<?php echo $ticketData['id']; ?>">
|
|
<?php if ($ticketData['status'] !== 'CLOSED') { ?>
|
|
<input type="submit" name="admin_ticket_close" value="Close Ticket" class="btn btn-warning">
|
|
<?php } else { ?>
|
|
<input type="submit" name="admin_ticket_open" value="Open Ticket" class="btn btn-success">
|
|
<?php } ?>
|
|
</form>
|
|
</td>
|
|
<td>
|
|
<form action="" method="post" align="center" onClick="return confirm('Are you sure you want to delete this ticket?');">
|
|
<input type="hidden" name="admin_ticket_id" value="<?php echo $ticketData['id']; ?>">
|
|
<input type="submit" name="admin_ticket_delete" value="Delete Ticket" class="btn btn-danger">
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<?php if ($ticketData['status'] !== 'CLOSED') { ?>
|
|
<hr class="bighr">
|
|
<form action="" method="post">
|
|
<input type="hidden" name="username" value="ADMIN"><br>
|
|
<textarea class="forumReply" name="reply_text" style="width: 610px; height: 150px"></textarea><br>
|
|
<input name="" type="submit" value="Post Reply" class="btn btn-primary">
|
|
</form>
|
|
<?php } ?>
|
|
<?php
|
|
} else {
|
|
?>
|
|
<h1>Latest Tickets</h1>
|
|
<?php
|
|
$tickets = mysql_select_multi("SELECT id,subject,creation,status FROM znote_tickets ORDER BY creation DESC");
|
|
if ($tickets !== false) {
|
|
?>
|
|
<table>
|
|
<tr class="yellow">
|
|
<td>ID:</td>
|
|
<td>Subject:</td>
|
|
<td>Creation:</td>
|
|
<td>Status:</td>
|
|
</tr>
|
|
<?php
|
|
foreach ($tickets as $ticket) {
|
|
echo '<tr class="special">';
|
|
echo '<td>'. $ticket['id'] .'</td>';
|
|
echo '<td><a href="admin_helpdesk.php?view='. $ticket['id'] .'">'. $ticket['subject'] .'</a></td>';
|
|
echo '<td>'. getClock($ticket['creation'], true) .'</td>';
|
|
echo '<td>'. $ticket['status'] .'</td>';
|
|
echo '</tr>';
|
|
}
|
|
?>
|
|
</table>
|
|
<?php
|
|
} else echo 'No helpdesk tickets has been submitted.';
|
|
}
|
|
include 'layout/overall/footer.php';
|
|
?>
|