Файл: modules/public/them.php
Строк: 78
<?php
/* DCMS Special
* Дата последнего редактирования 23.01.2016
* Модифицировал densnet
*/
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
require_once "../../sys/inc/$inc.php";
}
if (isset($_GET['id']))
$them['id'] = intval($_GET['id']);
$them = mysql_fetch_array(mysql_query("SELECT * FROM `public_forum` WHERE `id` = '" . $them['id'] . ")'"));
$public = mysql_fetch_array(mysql_query("SELECT * FROM `public` WHERE `id` = '" . $them['id_public'] . ")'"));
if ($them['id'] == 0) {
$set['title'] = lang('Нет такой темы'); // заголовок страницы
require_once H . 'sys/inc/thead.php';
aut();
err();
echo "<span class='err'>Нет такой темы</span><br />";
$msg = "[url=/info.php?id=" . $user['id'] . "] " . $user['nick'] . "[/url] предупрежден за некоректые запросы в сообществах";
mysql_query("INSERT INTO `mail` (`id_user`, `id_kont`, `msg`, `time`) values('0', '1', '" . $msg . "', '$time')");
if (!isset($_GET['ajax'])) {
$_SESSION['message'] = 'Нет такой темы пока предупреждение';
header('Location: /user/public/index.php?id=' . $them['id_public']);
}
exit;
require_once H . 'sys/inc/tfoot.php';
exit;
}
$set['title'] = $them['name'];
require_once H . 'sys/inc/thead.php';
if (isset($_POST['msg']) && isset($user)) {
$komm = $_POST['msg'];
if (utf8_strlen($komm) > 1024) {
$err[] = 'Сообщение превышает 1024 символа';
}
if (utf8_strlen($komm) < 2) {
$err[] = 'Слишком короткое сообщение';
}
if (!isset($err)) {
// отправка сообщения
mysql_query("INSERT INTO `public_forum` (`id_user`, `time`, `komm`, `id_them`) values('" . $user['id'] . "', '$time', '" . $komm . "', '" . $them['id'] . "')");
$o['id'] = mysql_insert_id();
if (isset($user) && $user['id'] != $them['id_user']) {
mysql_query("INSERT INTO `notification` (`id_user`, `avtor`, `type`, `time`, `id_object`) values('" . $them['id_user'] . "', '" . $user['id'] . "', 'o_komm', '$time', '" . $o['id'] . "')");
}
if (!isset($_GET['ajax'])) {
$_SESSION['message'] = 'Сообщение успешно отправлено';
header('Location: ?id=' . $them['id']);
}
exit;
}
}
if (isset($_GET['komm']) && $_GET['komm'] == 'del' && intval($_GET['post'])) {
$p = mysql_fetch_array(mysql_query("SELECT * FROM `public_forum` WHERE `id` = '" . intval($_GET['post']) . "' LIMIT 1"));
mysql_query("DELETE FROM `public_forum` WHERE `id` = '" . $p['id'] . "'");
msg('Удалено');
header("Location: ?id=" . $them['id']);
}
if (isset($_GET['them']) && $_GET['them'] == 'close') {
mysql_query("UPDATE `public_forum` SET `close` = '1' WHERE `id` = '" . $them['id'] . "' LIMIT 1");
header("Location: ?id=" . $them['id']);
}
if (isset($_GET['them']) && $_GET['them'] == 'open') {
mysql_query("UPDATE `public_forum` SET `close` = '0' WHERE `id` = '" . $them['id'] . "' LIMIT 1");
header("Location: ?id=" . $them['id']);
}
if (isset($_GET['del']) && $_GET['del'] == 'del') {
$res = mysql_query("SELECT * FROM `public_forum` WHERE `id_them` = '" . $them['id'] . "'");
while ($row = mysql_fetch_array($res)) {
mysql_query("DELETE FROM `public_forum` WHERE `id` = '" . $row['id'] . "'");
}
mysql_query("DELETE FROM `public_forum` WHERE `id` = '" . $them['id'] . "'");
msg('Удалено');
header("Location: forum.php?id=" . $them['id_public']);
}
aut();
err();
$doc->Link('list-group-item', "forum.php?id=" . $public['id'] . "", 'arrow-left', 'Обсуждения');
if (isset($_GET['v']) && $_GET['v'] == 's') {
echo "<div class='list-group-item list-group-item-info'>";
echo "Подтвердите удаление<br />";
echo "<a href='?id=" . $them['id'] . "&del=del' class='btn btn-success btn-sm'>Да, подтверждаю</a> ";
echo "<a href='?id=" . $them['id'] . "' class='btn btn-secondary btn-sm'>Отмена</a>";
echo "</div>";
}
echo "<div class='list-group-item'>";
echo toOutput($them['msg']) . "<br />";
echo "</div>";
if (isset($user) && $user['id'] == $them['id_user']) {
echo "<a class='list-group-item' href='?id=" . $them['id'] . "&v=s'><i class='fa fa-trash-o fa-fw'></i> Удалить тему</a>";
}
if (isset($user) && $user['id'] == $public['id_user']) {
if ($them['close'] == '0') {
echo "<a class='list-group-item' href='?id=" . $them['id'] . "&them=close'><i class='fa fa-lock fa-fw'></i> Закрыть тему</a>";
} else {
echo "<a class='list-group-item' href='?id=" . $them['id'] . "&them=open'><i class='fa fa-unlock fa-fw'></i> Открыть тему</a>";
}
}
if (isset($user)) {
if ($them['close'] == '0') {
echo "<form method='post' name='message' class='list-group-item' action='?id=" . $them['id'] . "&$passgen'>";
echo "<textarea name='msg' class='form-control'></textarea><br />";
$doc->Button('btn btn-primary btn-sm', null, 'pencil', 'Опубликовать');
echo "</form>";
} else {
echo "<div class='list-group-item list-group-item-info'><i class='fa fa-lock fa-fw'></i> Тема закрыта</div>";
}
}
$k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `public_forum` WHERE `id_them` = '" . $them['id'] . "'"), 0);
$k_page = k_page($k_post, $set['p_str']);
$page = page($k_page);
$start = $set['p_str'] * $page - $set['p_str'];
if ($k_post == 0) {
$doc->NoResult();
}
$q = mysql_query("SELECT * FROM `public_forum` WHERE `id_them` = '" . $them['id'] . "' ORDER BY id DESC LIMIT $start, " . $set['p_str'] . "");
while ($post = mysql_fetch_array($q)) {
$ank = mysql_fetch_array(mysql_query("SELECT * FROM `user` WHERE `id` = '" . $post['id_user'] . ")'"));
echo "<table class='list-group-item-komm'><tr><td class='icon14'>";
avatar($ank['id'], '48', 'border-radius: 2px;');
echo "</td><td class='null'>";
echo "<span style='float:right;' id='hides'>";
if ($them['close'] == '0') {
if (isset($user) && $user['id'] != $ank['id']) {
echo "<a href='forum_otvet.php?id=" . $post['id'] . "'><i class='fa fa-pencil fa-fw'></i></a> ";
}
}
if (isset($user) && $user['id'] == $them['id_user']) {
echo "<a href='?id=" . $them['id'] . "&komm=del&post=" . $post['id'] . "'><i class='fa fa-trash-o fa-fw'></i></a>";
}
echo "</span>";
echo user($ank['id']);
echo " <small style='color: grey;'>" . date::timek($post['time']) . "</small>";
echo "<br />";
$otv = mysql_fetch_array(mysql_query("SELECT * FROM `public_forum` WHERE `id` = '" . $post['otv'] . ")'"));
$ank2 = mysql_fetch_array(mysql_query("SELECT * FROM `user` WHERE `id` = '" . $otv['id_user'] . ")'"));
if ($post['otv'] > 0) {
echo "<div class='cit'> " . $ank2['nick'] . ", ";
$otv = mysql_fetch_array(mysql_query("SELECT * FROM `public_forum` WHERE `id` = '" . $post['otv'] . ")'"));
echo toOutput($otv['komm']) . "<br />";
echo "</div>";
}
echo toOutput($post['komm']) . "<br />";
echo "</td></tr></table>";
}
if ($k_page > 1) {
echo "<div class='list-group-item'>";
str("?id=" . $them['id'] . "&", $k_page, $page);
echo "</div>";
} // Вывод страниц
$doc->Link('list-group-item', "forum.php?id=" . $public['id'] . "", 'arrow-left', 'Обсуждения');
require_once H . 'sys/inc/tfoot.php';