Файл: modules/news/index.php
Строк: 195
<?php
/* DCMS S (Special)
* Версия файла 0.0.1
* Дата последнего редактирования 05.11.2015
* Модифицировал densnet
*/
require_once '../../sys/inc/start.php';
require_once H . 'sys/inc/compress.php';
require_once H . 'sys/inc/sess.php';
require_once H . 'sys/inc/settings.php';
require_once H . 'sys/inc/db_connect.php';
require_once H . 'sys/inc/ipua.php';
require_once H . 'sys/inc/fnc.php';
require_once H . 'sys/inc/user.php';
$set['title'] = 'Новости';
require_once H . 'sys/inc/thead.php';
#Заголовок
title();
aut();
#Константа папки новостей
define('DIR_NEWS', "/modules/news/");
#Сокращаем пути
if (isset($_GET['edit'])) {
require_once H . DIR_NEWS . 'edit.php';
} elseif (isset($_GET['delete'])) {
require_once H . DIR_NEWS . 'delete.php';
} elseif (isset($_GET['add'])) {
require_once H . DIR_NEWS . 'add.php';
} elseif (isset($_GET['settings'])) {
require_once H . DIR_NEWS . 'settings.php';
} elseif (isset($_GET['edit_komm'])) {
require_once H . DIR_NEWS . 'edit_komm.php';
} elseif (isset($_GET['news'])) {
require_once H . DIR_NEWS . 'news.php';
} elseif (isset($_GET['new_komm'])) {
require_once H . DIR_NEWS . 'komm.php';
} elseif (isset($_GET['add'])) {
require_once H . DIR_NEWS . 'add.php';
} else {
$k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `news`"), 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 `news` ORDER BY `id` DESC LIMIT $start, $set[p_str]");
echo "<div class = 'comm'>";
echo "<div class = 'nots'>";
if (user::access('adm_news_add') && isset($user)) {
echo "<span style = 'float:right;'>";
echo "<a href = '?add' style = 'color:#88C057;' title = 'Новая новость'><img src = '/style/icons/plus.png' /></a> ";
echo "<a href = '?settings' style = 'color:#ED7161;' title = 'Параметры'><img src = '/style/icons/setting.png' /></a>";
echo "</span>";
}
echo "Новости";
echo "</div>";
echo "</div>";
#Выводим список новостейы
while ($post = mysql_fetch_assoc($q)) {
$like = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_like` WHERE `id_news` = '$post[id]'"), 0);
$komm = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_komm` WHERE `id_news` = '$post[id]'"), 0);
echo "<div class = 'comm'>";
#Лайк
if (isset($_GET['like']) && isset($user)) {
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `news_like` WHERE `id_news` = '" . intval($_GET['id']) . "' AND `id_user` = '$user[id]' LIMIT 1"), 0) != 0) {
} else {
mysql_query("INSERT INTO `news_like` (`id_user`, `id_news`) values('$user[id]', '" . intval($_GET['id']) . "')");
}
header("Location: " . DIR_NEWS . "" . SID);
}
if (isset($_GET['unlike']) && isset($user)) {
mysql_query("DELETE FROM `news_like` WHERE `id_user` = '$user[id]' AND `id_news` = '" . intval($_GET['id']) . "' LIMIT 1");
header("Location: " . DIR_NEWS . "" . SID);
}
echo "<table class = 'comm'><tr><td class = 'icon14'>";
echo "<img src = '/style/icons/RSS.png' />";
echo "</td><td class = 'null'>";
if (user::access('adm_news_edit') || user::access('adm_news_delete')) {
echo "<span style = 'float:right;' id = 'hide'>";
if (user::access('adm_news_edit')) {
echo "<a href = '?edit=$post[id]' title = 'Редактировать новость'><img src = '/style/icons/set.png' /></a> ";
}
if (user::access('adm_news_delete')) {
echo "<a href = '?delete=$post[id]' title = 'Удалить новость'><img src = '/style/icons/del.png' /></a>";
}
echo "</span>";
}
echo "<img src = '/style/icons/user.png' /> <span style = 'color: #3b5998;'><b>$post[avtor]</b></span><br />";
echo "<span style = 'color: #9197a3;' title = '" . date::time($post['time']) . "'>" . date::times($post['time']) . "</span>";
echo "</td></tr><tr><td colspan = '2'>";
#Заголовок новости
echo "<a style = 'vertical-align: middle;font-size: 20px;' href = '?news=$post[id]'>" . text::toOutput($post['title']) . "</a><br />";
#Текст новости
echo "<i style = 'font-size: 14px;'>" . text::toOutput($post['msg']) . "</i><br />";
#Изображение, если есть
if ($user['set_news'] == 1) {
if (is_file(H . 'modules/news/images/' . $post['id'] . '.png')) {
echo "<br /><img src = '/modules/news/images/$post[id].png' style = 'border: 1px solid #CCDDED; padding: 2px; border-radius: 5px; max-width: 150px;' />";
}
}
echo "</td></tr></table>";
if (isset($user)) {
echo "<div class = 'hr'></div>";
if ($like == 0) {
$l = null;
} else {
$l = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_like` WHERE `id_news` = '$post[id]'"), 0);
}
#Просмотры
echo "<span title = 'Просмотрели " . sklon_text($post['prosm'], array('раз', 'раза', 'раз')) . "' style = 'float:right;color: #3b5998;'><img src = '/style/icons/digital_signature_pen.png' /> $post[prosm]</span>";
#Мне нравится
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `news_like` WHERE `id_news` = '$post[id]' AND `id_user` = '$user[id]' LIMIT 1"), 0) == 0) {
echo "<a href = '" . DIR_NEWS . "?id=$post[id]&like' title = 'Мне нравится'><img src = '/style/icons/like1.png' /> <font color = '#7f7f7f'><b>Нравится $l</b></font></a> ";
} else {
echo "<a href = '" . DIR_NEWS . "?id=$post[id]&unlike' title = 'Не нравится'><img src = '/style/icons/like0.png' /> <font color = '#5890ff'><b>Нравится $l</b></font></a> ";
}
$kom = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_komm` WHERE `id_news` = '$post[id]' AND `id_user` = '$user[id]' LIMIT 1"), 0);
if ($kom == 0) {
$komms = null;
} else {
$komms = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_komm` WHERE `id_news` = '$post[id]' AND `id_user` = '$user[id]' LIMIT 1"), 0);
}
#Комментировать
if (isset($user)) {
if ($kom == 0) {
echo "<a href = '?news=$post[id]' title = 'Комментировать'><img src = '/style/icons/comment.png' /> <font color = '#7f7f7f'><b>Комментарий $komms ";
if ($post['close'] == 1) {
echo "<img src = '/style/icons/lock.png' />";
}
echo "</b></font></a> ";
} else {
echo "<a href = '?news=$post[id]' title = 'Комментировать'><img src = '/style/icons/comment1.png' /> <font color = '#5890ff'><b>Комментарий $komms ";
if ($post['close'] == 1) {
echo "<img src = '/style/icons/lock.png' />";
}
echo "</b></font></a> ";
}
}
#Ссылка
if ($post['link'] != NULL) {
echo "<a href = '" . htmlentities($post['link'], ENT_QUOTES, 'UTF-8') . "' title = 'Перейти, чтобы узнать подробности'><img src = '/style/icons/zakl.png' /> <font color = '#7f7f7f'><b>Ссылка</b></font></a> ";
}
########
}
echo "</div>";
echo "<div class = 'mini_f'>";
#Выводит тех, кому понравилась новость
$kum = @mysql_result(mysql_query("SELECT id_user FROM `news_like` WHERE `id_news` = '$post[id]'"), 0);
$kom = @mysql_result(mysql_query("SELECT nick FROM `user` WHERE `id` = '$kum' LIMIT 1"), 0);
$kem = $like - 1;
if ($user['id'] == $kum) {
if ($like == 1) {
$vam = "Вам это нравится";
} elseif ($like >= 2) {
$vam = "Вам и еще <a href = '" . DIR_NEWS . "?news=$post[id]&like_all'>" . sklon_text($kem, array('пользователю', 'пользователям', 'пользователям')) . "</a> это нравится";
}
} else {
$vam = "<a href = '" . DIR_NEWS . "?news=$post[id]&like_all'>" . sklon_text($like, array('пользователю', 'пользователям', 'пользователям')) . "</a> это нравится";
}
if ($like == 1) {
echo "<img src = '/style/icons/l.png'/> <font color = '#B2B2B2'>$vam</font>";
} elseif ($like >= 2) {
echo "<img src = '/style/icons/l.png'/> <font color = '#B2B2B2'>$vam</font>";
}
$k_posts = mysql_result(mysql_query("SELECT COUNT(*) FROM `news_komm` WHERE `id_news` = '$post[id]'"), 0);
$k_pages = k_page($k_posts, $set['p_str']);
$pages = page($k_pages);
$starts = $set['p_str'] * $pages - $set['p_str'];
if (IS_WEB) {
$qs = mysql_query("SELECT * FROM `news_komm` WHERE `id_news` = '$post[id]' ORDER BY `id` DESC LIMIT 5");
} else {
$qs = mysql_query("SELECT * FROM `news_komm` WHERE `id_news` = '$post[id]' ORDER BY `id` DESC LIMIT 3");
}
if ($k_posts == 0) {
echo "<span style = 'color: #9197a3;'>Еще не обсуждали...</span>";
} else {
echo "<div class = 'hr'></div>";
//echo "<div class = 'comm'>";
}
while ($posts = mysql_fetch_assoc($qs)) {
$anks = user::get_user($posts['id_user']);
echo "<table class = ''><tr><td class = 'icon14'>";
avatar_p($anks['id'], '30');
echo "</td><td class = 'null'>";
echo "<a href = '/info.php?id=$anks[id]'><b>";
echo text::gradient("$anks[nick]", "$anks[ncolor]", "$anks[ncolor2]");
echo "</b></a> ";
echo text::toOutput($posts['msg']);
echo "<br /><small title = '" . date::time($posts['time']) . "' style = 'color: #ADB2BB;'>" . date::timek($posts['time']) . "</small>";
echo "</td></tr></table>";
}
echo "</div>";
}
#Если нет новостей
if ($k_post == 0) {
echo "<div class = 'errs'>";
echo "<img src = '/style/icons/error.png' /> Нет результатов";
echo "</div>";
}
if ($k_page > 1) {
str('index.php?', $k_page, $page);
}
}
require_once H . 'sys/inc/tfoot.php';