Файл: 3020.ru/file_3020/plugins/news.comments.php
Строк: 176
<?
if (isset($ID)) {
$news = $sql -> fetch("SELECT * FROM `news` WHERE `id` = '$ID' LIMIT 1");
}
if (!isset($news['id'])) {
die('К сожалению новость не найдена или он был удален');
}
if ($level == 1 || $level == 0 AND $news['close'] == 1) {
die('К сожалению новость удалена');
}
if (isset($_GET['delete']) && $level > 1) {
$delete = (int) $_GET['delete'];
$delete = $sql -> fetch("SELECT * FROM `news_comments` WHERE `id` = '$delete' LIMIT 1");
if ($delete['id'] && $level > 1) {
if ($user['id'] != $delete['id_user']) {
admin_log($user['id'], 'Новости|Комментарии', 'Удаление сообщения [red]"' . $delete['msg'] . '"[/red] пользователя [url=?func=user.profile&id=' . $delete['id_user'] . ']' . login($delete['id_user']) . '[/url]');
}
$sql -> delete("DELETE FROM `news_comments` WHERE `id` = '".$delete['id']."' LIMIT 1");
$messages[] = 'Сообщение успешно удалено';
}
}
if (isset($_GET['truncate']) && $level > 2) {
$sql -> delete("TRUNCATE `news_comments` WHERE `id_news` = '".$news['id']."'");
admin_log($user['id'], 'Новости|Комментарии', 'Удаление всех комментариев у новости [url=/index.php?func=news.comments&id=' . $news['id'] . ']' . $news['name'] . '[/url]');
$_SESSION['message'] = 'Комментарии успешно очищены';
header('Location: ?func=' . $func);
exit;
}
if (isset($_GET['set']) && $level > 2) {
$sett = ($news['set'] == 1 ? 0 : 1);
if ($sett == 0) {
$tname = 'Открытие комментариев';
}
if ($sett == 1) {
$tname = 'Закрытие комментариев';
}
$sql -> update("UPDATE `news` SET `set` = '$sett' WHERE `id` = ". $news['id']);
admin_log($user['id'], 'Новости|Настройки', ''.$tname.' к новости [url=/index.php?func=news.comments&id=' . $news['id'] . ']' . $news['name'] . '[/url]');
$_SESSION['message'] = 'Успешно';
header('Location: ?func=news.comments&id='. $news['id']);
exit;
}
if (isset($_GET['close']) && $level > 2) {
$sett = ($news['close'] == 1 ? 0 : 1);
if ($sett == 0) {
$tname = 'Открытие новости';
}
if ($sett == 1) {
$tname = 'Скрытие новости';
}
$sql -> update("UPDATE `news` SET `close` = '$sett' WHERE `id` = ". $news['id']);
admin_log($user['id'], 'Новости|Настройки', ''.$tname.' к новости [url=/index.php?func=news.comments&id=' . $news['id'] . ']' . $news['name'] . '[/url]');
$_SESSION['message'] = 'Успешно';
header('Location: ?func=news.comments&id='. $news['id']);
exit;
}
if (isset($_POST['msg']) && $level > 0 AND $news['set'] == 0) {
$msg = $sql->esc($_POST['msg']);
/// Если нет покупок то проверяем заполнен ли вмид и если нет не даём писать
$pokupka = $sql -> selectCount("SELECT COUNT(*) FROM `shop_pays` WHERE `id_user` = '".$user['id']."' AND `pays` = '1'");
if ($pokupka == 0) {
if ($user['wmid']==0)$err[] = 'Не заполнены реквизиты в анкете !'; /// by_Mstivoj
}
if (strlen2($msg) > 1024) {
$err[] = 'Сообщение слишком длинное';
} elseif (strlen2($msg) < 2) {
$err[] = 'Сообщение слишком короткое';
}
if (!isset($err)) {
if (isset($_POST['reply'])) {
$reply = (int) $_POST['reply'];
journal($reply, 'comment', "Пользователь [b]$user[login] [/b], ответил".($user['pol']==0?'a':null)." вам в [url=/index.php?func=news.comments&id=" . $news['id'] . "]комментариях[/url] к новости [url=/index.php?func=news]" . $news['name'] . "[/url]");
}
$sql -> insert("INSERT INTO `news_comments` (`id_user`, `id_news`, `time`, `msg`) VALUES ('" . $user['id'] . "', '" . $news['id'] . "', '$time', '$msg')");
$_SESSION['message'] = 'Сообщение успешно отправлено';
header('Location: ?func=' . $func . '&id=' . $news['id'] . '&sid=' . mt_rand(000, 999));
exit;
}
}
if (isset($_GET['reply'])) {
$insert = login($_GET['reply'], 0) . ', ';
}
$system['title'] = 'Новости - ' . text($news['name']);
require SYS . 'header.php';
?>
<div class="nav2">
<i class="icon-list-alt"></i> <b><?= text($news['name'])?></b>
</div>
<div class="nav1">
<?= text_out($news['msg'])?><br />
Опубликовал: <?= login($news['id_user'], 1)?> (<?= vremja($news['time'])?>)
</div>
<? if ($level >2){ ?>
<div class="nav1"><a href="/?func=Vk.Club.Post&id=<?= $news['id']?>">Опубликовать Новость в VK</a></div>
<div class="nav1"><a href="/?func=news.comments&id=<?= $news['id']?>&set=<?=($news['set'] == 0 ? 1 : 0)?>"><?=($news['set'] == 1 ? 'Включить обсуждение':'Выключить обсуждение')?></a></div>
<div class="nav1"><a href="/?func=news.comments&id=<?= $news['id']?>&close=<?=($news['close'] == 0 ? 1 : 0)?>"><?=($news['close'] == 1 ? 'Показать новость':'Скрыть новость')?></a></div>
<?}?>
<div class="foot">
Комментарии
</div>
<? if ($level > 0 AND $news['set'] == 0) { ?>
<form class="form_t" action="?func=<?= $func?>&id=<?= $news['id']?>&sid=<?= mt_rand(000, 999)?>" method="POST" style="margin: 2px;" enctype="multipart/form-data">
<? if (is_file(THEME . 'php/form.textarea.php')) {
require THEME . 'php/form.textarea.php';
} else {
?><textarea style="width: 75%;" name="msg" id="msg" placeholder="Cообщение..."><?= $insert?></textarea><br /><?
}
?>
<?= (isset($_GET['reply']) ? '<input type="hidden" name="reply" value="' . (int) $_GET['reply'] . '" />' : '')?>
<button type="submit" class="btn">Отправить</button> <a href="?func=<?= $func ?>&id=<?= $news['id']?>" class="btn">Обновить</a>
</form>
<?
}
if ($news['set'] == 1) {
?>
<div class="alert" style="margin: 2px;">Комментарии к этой новости отключены </div>
<?
}
$k_post = $sql -> selectCount("SELECT COUNT(*) FROM `news_comments` WHERE `id_news` = '$news[id]'");
if ($k_post == 0) {
?>
<div class="alert" style="margin: 2px;">Список сообщений пуст</div>
<?
} else {
$k_page = k_page($k_post, $system['page_str']);
$page = page($k_page);
$start = $system['page_str'] * $page - $system['page_str'];
$array = $sql -> select("SELECT * FROM `news_comments` WHERE `id_news` = '$news[id]' ORDER BY `time` DESC LIMIT $start, $system[page_str]");
foreach ($array AS $post) {
$num++;
?>
<div class="<?= ($num % 2 ? "nav1" : "nav2")?>">
<? if ($level > 1) { ?>
<a href="?func=<?= $func?>&id=<?= $news['id']?>&delete=<?= $post['id']?>&page=<?= $page?>" class="close">×</a>
<? } ?>
<?= avatar($post['id_user'])?> <?= login($post['id_user'], 1)?> <?= vremja($post['time'])?><br />
<?= text_out($post['msg'])?><br />
<? if ($level > 0 && $user['id'] != $post['id_user']) { ?>
[<a href="?func=<?= $func?>&id=<?= $news['id']?>&reply=<?= $post['id_user']?>" class="reply">ответ</a>]
<? } ?>
</div>
<?
}
if ($k_page > 1) {
str('?func=' . $func . '&id=' . $news['id'] . '&', $k_page, $page);
}
}
if ($level > 1) {
?>
<div class="foot">
« <a href="?func=news">К новостям</a><br />
</div>
<?
}
?>