File size: 7.23Kb
<?
/**
* @ PACKAGE = DCMS-SOCIAL
* @ AUTHOR = DARIK
*/
include_once '../../sys/inc/start.php';include_once '../../sys/inc/compress.php';include_once '../../sys/inc/sess.php';
include_once '../../sys/inc/home.php';include_once '../../sys/inc/settings.php';include_once '../../sys/inc/db_connect.php';
include_once '../../sys/inc/ipua.php';include_once '../../sys/inc/fnc.php';include_once '../../sys/inc/user.php';
// Только для пользователей
if (!isset($user))header("location: /index.php?");
// ID
define ('id', isset( $_GET['id'] ) ? abs(intval($_GET['id'])) : 0);
$act = mysql_fetch_assoc(mysql_query("SELECT * FROM `tickets` WHERE `id` = '".id."' LIMIT 1"));
$description = htmlspecialchars( $act['description'] );
$acts = mysql_fetch_assoc(mysql_query("SELECT name FROM `tickets_type` WHERE `id` = $act[type] LIMIT 1"));
$sys = mysql_fetch_assoc(mysql_query("SELECT * FROM `tickets_sys` WHERE `id` = 1 LIMIT 1"));
$name = htmlspecialchars( $acts['name'] );
$st = array('<span style="color: #8c1422 ;"> На рассмотрение</span>','<span style="color: #8c1422 ;"> Отклонено</span>','<span style="color: #8c1422 ;"> Закрыт</span>');
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `id` = $act[user] LIMIT 1"));
$reason = htmlspecialchars( $act['reason'] );
$count = mysql_result(mysql_query("SELECT COUNT(id) FROM `tickets_comm` WHERE `tickets` = '".id."'"), 0);
// если только существует
if (!empty($act)) {
// только если заявка пользователя либо админ
if ($act['user'] == $user['id'] || $user['level'] > 0) {
// Отправка заявки
if (isset($_POST['description']) && isset($user))
{
$des = htmlspecialchars( $_POST['description'] );
$mat = antimat($des);
if ($mat)$err[] = 'В тексте сообщения обнаружен мат: ' . $mat;
if (strlen2($des) > 501){ $err[] = 'Комментарии слишком длинный'; }
if (strlen2($des) < 3){ $err[] = 'Короткий комментарий'; }
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `tickets_comm` WHERE `user` = '$user[id]' AND `description` = '$des' LIMIT 1"),0) != 0)
{
$err = 'Вы уже писали ранее такой же комментарий.';
}
if(!isset($err))
{
if($act['user'] != $user['id']){
$msg = '
Уведомляем о том что, на вашей [url=/tickets/view/?id='.id.']заявке[/url] новый комментарий.
';
// отправка сообщения
mysql_query("INSERT INTO `mail` (`id_user`, `id_kont`, `msg`, `time`) values('$sys[user]', '$act[user]', '".my_esc($msg)."', '$time')");
// добавляем в контакты
if ($user['add_konts']==1 && mysql_result(mysql_query("SELECT COUNT(*) FROM `users_konts` WHERE `id_user` = '$sys[user]' AND `id_kont` = '$act[user]'"),0)==0)
mysql_query("INSERT INTO `users_konts` (`id_user`, `id_kont`, `time`) VALUES ('$sys[user]', '$act[user]', '$time')");
// обновление сведений о контакте
mysql_query("UPDATE `users_konts` SET `time` = '$time' WHERE `id_user` = '$sys[user]' AND `id_kont` = '$act[user]' OR `id_user` = '$act[user]' AND `id_kont` = '$sys[user]'");
}
mysql_query("INSERT INTO `tickets_comm` (user, time, description, tickets) values('$user[id]', '$time', '" .$des . "', '" .id. "' )");
$_SESSION['message'] = 'Комментарий успешно добавлен';
header ("Location: /tickets/view/?id=".id."" . SID);
exit;
}
}
// заголовок страницы
$set['title'] = 'Тех.поддержка : admin_panel : заявка ';
// head
include_once '../../sys/inc/thead.php';
title();
aut();
err();
// style
echo'
<link rel="stylesheet" href="/tickets/style.css" type="text/css" />
<div class="block_y"><div class="s_y">
<span style="float: right;"><a href="/tickets/delete/?id='.$act['id'].'"> <img src="/tickets/img/delete.png" alt="*"></a></span>
<span class="light_item">Заявка:</span> '.$name.'</br>
<span class="light_item">Статус:</span> '.$st[$act['st']].'</br>
<span class="light_item">Время создания:</span> ' . vremja($act['time']) . '</br>
'.($user['level'] > 0 ? '<span class="light_item">Создал:</span> '. user::avatar($ank['id'], 2).''. user::nick($ank['id'], 1, 1, 1).'</br>':'').'
<span class="light_item">Описание:</span> '.$description.'</br>
'.($reason == null ? '':'<span class="light_item">Причина отказа:</span> '.$reason.'</br>').'
'.($user['level'] > 0 ? '
'.($act['st'] == 0 ? '<a href="/tickets/admin/loc/?st=2&id='.$act['id'].'">Отклонить</a> | <a href="/tickets/admin/loc/?st=3&id='.$act['id'].'">Закрыть</a>':'' ).'
'.($act['st'] == 1 ? '<a href="/tickets/admin/loc/?st=1&id='.$act['id'].'">На рассмотрение</a> | <a href="/tickets/admin/loc/?st=3&id='.$act['id'].'">Закрыть</a>':'' ).'
'.($act['st'] == 2 ? '<a href="/tickets/admin/loc/?st=1&id='.$act['id'].'">На рассмотрение</a> | <a href="/tickets/admin/loc/?st=2&id='.$act['id'].'">Отклонить</a>':'' ).'
'.($reason == null ? '
'.($act['st'] == 1 || $act['st'] == 2 ? '| <a href="/tickets/admin/reason/?id='.$act['id'].'">Указать причину отказа</a>':'').'
':'').'
':'').'
</div></div>
<div class="block_y"><div class="st_y">Комментарии ('.$count.')</div>';
// выводим комментарии
$k_page = k_page($count, $set['p_str']);
$page = page($k_page);
$start = $set['p_str'] * $page - $set['p_str'];
$q = mysql_query("SELECT * FROM `tickets_comm` WHERE `tickets` = '".id."' ORDER BY time DESC LIMIT $start, $set[p_str]");
while ($post = mysql_fetch_assoc($q))
{
$ank2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `id` = $post[user] LIMIT 1"));
$description2 = htmlspecialchars( $post['description'] );
echo '
<div class="s_y">
<span style="float: right;">' . vremja($post['time']) . '</span>
'. user::avatar($ank2['id'], 2).''. user::nick($ank2['id'], 1, 1, 1).'
'.($user['level'] > 0 ? '
- <a href="/tickets/comm_delete/?tic='.$act['id'].'&id='.$post['id'].'"> <img src="/tickets/img/delete.png" alt="*"></a>
':'').'
</br>
'.$description2.'
</div>
';
}
// если только на расммотрение
if ($act['st'] == 0){
echo'
<form action="" method="post">
<div class="block_y">
<b>Добавить комментарий:</b><br>
<textarea name="description" rows="5" cols="17" style="width:95%"></textarea><br>
<input type="submit" value="Добавить">
</div>
</form>
<div style="color:#9b2d30; padding:8px;">Приватные комментарии видят только автор заявки и администраторы.</div>
';
}else{ echo '<div class="st3_y">Возможность комментирования ограничена </div>';}
echo'
</div>
<div class="block_y"><a href="/tickets/"> Назад</a></div>';
// foot
include_once '../../sys/inc/tfoot.php';
//error
} else { header("Location: /tickets/");exit;}
} else { header("Location: /tickets/");exit;}
?>