Файл: modules/news/add.php
Строк: 141
<?php
/* DCMS Special
* Дата последнего редактирования 10.12.2015
* Модифицировал densnet
*/
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
require_once "../../sys/inc/{$inc}.php";
}
#Спрашиваем разрешение на создание новости
access('adm_news_add', null, 'index.php?' . SID);
$set['title'] = 'Новости';
require_once H . 'sys/inc/thead.php';
if (isset($_POST['title']) && isset($_POST['msg']) && isset($_POST['link'])) {
$title = esc($_POST['title'], 1);
$link = esc($_POST['link'], 1);
if ($link != NULL && !preg_match('#^https?://#i', $link) && !preg_match('#^/#', $link)) {
$link = '/' . $link;
}
$msg = esc($_POST['msg']);
if (utf8_strlen($title) > 100) {
$err = 'Слишком большой заголовок новости';
}
if (utf8_strlen($title) < 3) {
$err = 'Короткий заголовок';
}
$mat = antimat($title);
if ($mat) {
$err[] = 'В заголовке новости обнаружен мат: ' . $mat;
}
if (utf8_strlen($msg) > 10024) {
$err = 'Содержиние новости слишком большое';
}
if (utf8_strlen($msg) < 2) {
$err = 'Новость слишком короткая';
}
$mat = antimat($msg);
if ($mat) {
$err[] = 'В тексте сообщения обнаружен мат: ' . $mat;
}
$msg = mysql_real_escape_string($msg);
$close = intval($_POST['close']);
if (!isset($err)) {
$ch = intval($_POST['ch']);
$mn = intval($_POST['mn']);
$main_time = time() + $ch * $mn * 60 * 60 * 24;
if ($main_time <= time()) {
$main_time = 0;
}
mysql_query("INSERT INTO `news` (`time`, `msg`, `title`, `main_time`, `link`, `avtor`, `close`) values('$time', '" . mysql_real_escape_string($msg) . "', '$title', '$main_time', '$link', '$user[nick]', '$close')");
mysql_query("OPTIMIZE TABLE `news`");
#Расслылка новостей на майл
if (isset($_POST['mail'])) {
$q = mysql_query("SELECT `ank_mail` FROM `user` WHERE `set_news_to_mail` = '1' AND `ank_mail` <> ''");
while ($ank = mysql_fetch_assoc($q)) {
mysql_query("INSERT INTO `mail_to_send` (`mail`, `them`, `msg`) values('$ank[ank_mail]', 'Новости', '" . toOutput($msg) . "')");
}
}
msg('Новость успешно добавлена');
header("Location: index.php");
exit;
}
}
err();
#Навигация
echo "<nav class='navbar navbar-light' style='background-color: #607D8B; color: #fff;'>";
echo "<ul class='nav navbar-nav'>";
echo "<li class='nav-item' style='margin-left: 1px;'><a class='nav-link' href='/'><i class='material-icons'>home</i></a></li>";
echo "<li class='nav-item' style='margin-left: 1px;'><a class='nav-link'><i class='material-icons'>keyboard_arrow_right</i></a></li>";
echo "<li class='nav-item' style='margin-left: 1px;'><a class='nav-link' href='/modules/news/'>Новости</a></li>";
echo "<li class='nav-item' style='margin-left: 1px;'><a class='nav-link'><i class='material-icons'>keyboard_arrow_right</i></a></li>";
echo "<li class='nav-item' style='margin-left: 1px;'><a class='nav-link'>Новая новость</a></li>";
echo "</ul>";
echo "</nav>";
echo "<form class='list-group-item' name='add' method='POST' action='add.php'>";
echo "<div class='row'>";
echo "<div class='input-field col s12'>";
echo "<input id='title' name='title' length='250' type='text' value='' class='validate'>";
echo "<label for='title'>Заголовок новости</label>";
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='input-field col s12'>";
echo "<input id='link' name='link' length='64' type='text' value='' class='validate'>";
echo "<label for='link'>Ссылка на источник</label>";
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='input-field col s12'>";
echo "<textarea name='msg' id='msg' length='10024' class='materialize-textarea'></textarea>";
echo "<label for='msg'>Содержание новости</label>";
echo "</div>";
echo "</div>";
echo "<div class='switch'>";
echo "<label><input type='checkbox' checked='checked' name='mail' value='1'><span class='lever'></span>Рассылка на email (" . mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `set_news_to_mail` = '1' AND `ank_mail` <> ''"), 0) . ")</label>";
echo "</div>";
echo "<div class='hr'></div>";
echo "Состояние обсуждения<br />";
echo "<input class='with-gap' name='close' type='radio' checked='checked' id='close0' value='0' /><label for='close0'><i class='material-icons'>lock_open</i> Открытое</label><br />";
echo "<input class='with-gap' name='close' type='radio' checked='checked' id='close1' value='1' /><label for='close1'><i class='material-icons'>lock_outline</i> Закрытое</label>";
echo "<div class='hr'></div>";
echo "<div class='row'>";
echo "<div class='input-field col s4'>";
echo "<input id='ch' name='ch' maxlength='64' type='text' value='1' class='validate'>";
echo "<label for='ch'>Показывать</label>";
echo "</div>";
echo "<div class='input-field col s5'>";
echo "<select class='browser-default' name='mn'>";
echo "<option value='0' selected='selected'>Выбрать</option>";
echo "<option value='1'>Дней</option>";
echo "<option value='7'>Недель</option>";
echo "<option value='31'>Месяцев</option>";
echo "</select>";
echo "</div>";
echo "</div>";
echo "<button class='waves-effect waves-light btn' name='ok'><i class='material-icons'>queue</i> Опубликовать</button>";
echo "</form>";
require_once H . 'sys/inc/tfoot.php';