Файл: ticket.php
Строк: 81
<?
require_once ('system/func.php');
auth(); // только для авторизованных
if($_GET['id']){
$id = num($_GET['id']);
$ticket = mysql_fetch_assoc(mysql_query("SELECT * FROM `ticket` WHERE `id` = '$id' LIMIT 1"));
if($user['access'] != 2){
if($ticket['id_user'] != $myID){
header('Location: /ticket/');
exit();
}
}
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$ticket[id_user]' LIMIT 1"));
$title = "Тикет $ticket[tip]";
require_once ('system/header.php');
if(isset($_GET['close'])){
mysql_query('UPDATE `ticket` SET `status` = "close" WHERE `id` = "'.$ticket['id'].'"');
header('Location: ?');
exit();
}
if(isset($_GET['delete']) and $user['access'] == 2){
mysql_query('DELETE FROM `ticket_msg` WHERE `id_ticket` = "'.$ticket['id'].'"');
mysql_query('DELETE FROM `ticket` WHERE `id` = "'.$ticket['id'].'"');
$_SESSION['msg'] = 'Тикет успешно удален';
header('Location: /settGame/ticket/');
exit();
}
echo "<div class='block'>Тип тикета: $ticket[tip]<br>Статус: ".($ticket['status'] == 'otckrit' ? 'Открыт' : 'Закрыт')."<br>Оформил(а): ".icons_user($ank['id'])." <a href='/profile/$ank[id]'>$ank[login]</a> ".vremja($ticket['time'])."<br>Вопрос: ".text_msg($ticket['text'])."</div>";
echo "<div class='block2'>";
if($ticket['status'] != 'close')echo "<li><a href='?close'>".ico('icons','arrow.png')."Закрыть обращение</a></li>";
if($user['access'] == 2)echo "<li><a href='?delete'>".ico('icons','arrow.png')."Удалить обращение</a></li>";
echo "</div>";
$set['p_str'] = 10;
$k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `ticket_msg` WHERE `id_ticket` = '$ticket[id]'"),0);
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];
$q = mysql_query("SELECT * FROM `ticket_msg` WHERE `id_ticket` = '$ticket[id]' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
if($k_post == 0) echo "<div class='block'>Сообщений не найдено...</div>";
while($post = mysql_fetch_assoc($q)) {
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$post[id_user]' LIMIT 1"));
if($user['access'] == 2)$tip = 'user';
else $tip = 'admin';
if($post['onlick'] == 1 and $post['tip'] == $tip){
mysql_query('UPDATE `ticket_msg` SET `onlick` = "0" WHERE `id` = "'.$post['id'].'"');
}
echo "<div class='block'>";
echo icons_user($ank['id'])." <a href='/profile/$ank[id]'>$ank[login]</a> - ".($post['onlick'] == 1 ? "<font color='green'>".vremja($post['time'])."</font><br>" : vremja($post['time'])."<br>")."".text_msg($post['text'])."";
echo "</div>";
}
echo "</div>";
echo "<div class='block'>";
str('?',$k_page,$page); // Вывод страниц
echo "</div>";
if(isset($_REQUEST['submit'])){
$text = text($_POST['text']);
if($user['access'] == 2)$tip = 'admin';
else $tip = 'user';
if(strlen($text) < 5 or strlen($text) > 5000)$err = 'Длина сообщения должна быть в пределах 5 - 5000 символов';
if(!isset($err)){
mysql_query('INSERT INTO `ticket_msg` SET `id_user` = "'.$myID.'", `id_ticket` = "'.$ticket['id'].'", `text` = "'.$text.'", `time` = "'.time().'", `tip` = "'.$tip.'"');
$_SESSION['msg'] = "Сообщение добавлено";
header('Location: ?');
exit();
}else{
$_SESSION['msg'] = $err;
header('Location: ?');
exit();
}
}
if($ticket['status'] == 'otckrit'){
echo "<div class='block'>";
echo "<form method='post' action=''>";
echo "Сообщение:<br><textarea name='text' placeholder='Введите сообщение...' maxlength='5000'></textarea><br>";
echo "<input type='submit' class='btn' value='Отправить' name='submit'>";
echo "</form>";
echo "</div>";
}
echo "<a href='/ticket/' class='link'>".ico('icons','arrow.png')." Вернуться назад</a>";
if($user['access'] == 2)echo "<a href='/settGame/ticket/' class='link'>".ico('icons','arrow.png')." Вернуться в админку</a>";
require_once ('system/footer.php');
}else{
$title = 'Служба поддержки';
require_once ('system/header.php');
echo "<h1>Мои обращения</h1>";
$set['p_str'] = 10;
$k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `ticket` WHERE `id_user` = '$myID'"),0);
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];
$q = mysql_query("SELECT * FROM `ticket` WHERE `id_user` = '$myID' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
echo "<div class='block2'>";
if($k_post == 0) echo "<h1>Обращений не найдено...</h1>";
while($post = mysql_fetch_assoc($q)) {
$onlick = mysql_result(mysql_query("SELECT COUNT(*) FROM `ticket_msg` WHERE `id_ticket` = '$post[id]' AND `onlick` = '1' AND `tip` = 'admin'"),0);
echo "<li><a href='/ticket/$post[id]/'>".ico('icons','arrow.png')."".rez_text($post['text'])." ".($onlick >= 1 ? "<font color='green'>(+)</font>" : "")."</a></li>";
}
echo "</div>";
echo "<div class='block'>";
str('?',$k_page,$page); // Вывод страниц
echo "</div>";
if(isset($_REQUEST['submit'])){
$tip = text($_POST['tip']);
$text = text($_POST['text']);
if(strlen($text) < 50 or strlen($text) > 5000)$err = 'Длина сообщения должна быть в пределах 50 - 5000 символов';
if($user['level'] < 5)$err = 'Создание тикетов возможно только с 5 уровня';
if(!isset($err)){
mysql_query('INSERT INTO `ticket` SET `id_user` = "'.$myID.'", `tip` = "'.$tip.'", `text` = "'.$text.'", `time` = "'.time().'"');
$_SESSION['msg'] = "Обращение успешно создано";
header('Location: ?');
exit();
}else{
$_SESSION['msg'] = $err;
header('Location: ?');
exit();
}
}
echo "<h1>Задать вопрос</h1>";
echo "<div class='block'>";
echo "<form method='post' action=''>";
echo 'Тип обращения:<br />
<select name="tip">
<option value="Вопросы об оплате">Вопросы об оплате</option>
<option value="Технические вопросы">Технические вопросы</option>
<option value="Предложение">Предложение</option>
<option value="Другой вопрос">Другой вопрос</option>
</select><br/>';
echo "Текст обращения:<br><textarea name='text' placeholder='Введите сообщение...' maxlength='5000'></textarea><br>";
echo "<input type='submit' class='btn' value='Создать тикет' name='submit'>";
echo "</form>";
echo "</div>";
require_once ('system/footer.php');
}
?>