File size: 5.15Kb
<?php
// Основной файл системы
require('../sys/inc/core.php');
user_access('adm_news', null, 'index.php?' . SID);
// Переменные по умолчанию
if (isset($_POST['view'])) {
$news['title'] = $_POST['title'];
$news['msg'] = $_POST['msg'];
$news['link'] = $_POST['link'];
$news['id_user'] = $user['id'];
} else {
$news['title'] = null;
$news['msg'] = null;
$news['link'] = null;
$news['id_user'] = null;
}
if (isset($_POST['title']) && isset($_POST['msg']) && isset($_POST['link']) && isset($_POST['ok'])) {
$title = esc($_POST['title'], 1);
$link = esc($_POST['link'], 1);
$msg = esc($_POST['msg'], 1);
if ($link != NULL && !preg_match('#^https?://#', $link) && !preg_match('#^/#i', $link)) $link = '/' . $link;
if (strlen2($title) > 50) {
$err = 'Слишком большой заголовок новости';
}
if (strlen2($title) < 3) {
$err = 'Короткий заголовок';
}
$mat = antimat($title);
if ($mat) $err[] = 'В заголовке новости обнаружен мат: ' . $mat;
if (strlen2($msg) > 10024) {
$err = 'Содержиние новости слишком большое';
}
if (strlen2($msg) < 2) {
$err = 'Новость слишком короткая';
}
$mat = antimat($msg);
if ($mat) $err[] = 'В содержании обнаружен мат: ' . $mat;
$title = my_esc($_POST['title']);
$msg = my_esc($_POST['msg']);
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;
db::query("INSERT INTO `news` (`time`, `msg`, `title`, `main_time`, `link`, `id_user`) values('$time', '" . $msg . "', '$title', '$main_time', '$link', '$user[id]')");
db::query("update `user` set `news_read` = '0'");
$news['id'] = db::insert_id();
db::query("OPTIMIZE TABLE `news`");
db::query("UPDATE `user` SET `news_read` = '0'");
// Расслылка новостей на майл
if (isset($_POST['mail'])) {
$q = db::query("SELECT `ank_mail` FROM `user` WHERE `set_news_to_mail` = '1' AND `ank_mail` <> ''");
while ($ank = $q->fetch_assoc()) {
db::query("INSERT INTO `mail_to_send` (`mail`, `them`, `msg`) values('$ank[ank_mail]', 'Новости', '" . trim(br(bbcode(links(stripcslashes(htmlspecialchars($msg)))))) . "')");
}
}
$_SESSION['message'] = 'Новость успешно создана';
header("Location: news.php?id=$news[id]");
exit;
}
}
$set['title'] = 'Создание новости';
include_once '../sys/inc/thead.php';
title();
err();
aut(); // форма авторизации
if (isset($_POST['view']) && !isset($err)) {
echo '<div class="main2">';
echo text($news['title']);
echo '</div>';
echo '<div class="mess">';
echo output_text($news['msg']) . '<br />';
echo '</div>';
if ($news['link'] != NULL) {
echo '<div class="main">';
echo '<a href="' . htmlentities($news['link'], ENT_QUOTES, 'UTF-8') . '">Подробности →</a><br />';
echo '</div>';
}
}
echo '<form class="mess" method="post" name="message" action="add.php">';
echo 'Заголовок новости:<br /><input name="title" size="16" maxlength="32" value="' . text($news['title']) . '" type="text" /><br />';
$msg2 = text($news['msg']);
if (is_file(H . 'style/themes/' . $set['set_them'] . '/altername_post_form.php')) {
include_once H . 'style/themes/' . $set['set_them'] . '/altername_post_form.php';
} else {
echo 'Сообщение:' . $tPanel . '<textarea name="msg">' . $msg2 . '</textarea><br />';
}
echo 'Ссылка:<br /><input name="link" size="16" maxlength="64" value="' . text($news['link']) . '" type="text" /><br />';
echo 'Показывать на главной:<br />';
echo '<input type="text" name="ch" size="3" value="' . (isset($_POST['ch']) ? "" . intval($_POST['ch']) . "" : "1") . '" />';
echo '<select name="mn">';
echo ' <option value="0" ' . (isset($_POST['mn']) && $_POST['mn'] == 0 ? "selected='selected'" : null) . '> </option>';
echo ' <option value="1" ' . (isset($_POST['mn']) && $_POST['mn'] == 1 ? "selected='selected'" : null) . '>Дней</option>';
echo ' <option value="7" ' . (isset($_POST['mn']) && $_POST['mn'] == 7 ? "selected='selected'" : null) . '>Недель</option>';
echo ' <option value="31" ' . (isset($_POST['mn']) && $_POST['mn'] == 31 ? "selected='selected'" : null) . '>Месяцев</option>';
echo '</select><br />';
echo '<input value="Просмотр" type="submit" name="view" /> ';
if (isset($_POST['view'])) echo '<input value="Готово" type="submit" name="ok" />';
echo '</form>';
echo '<div class="foot">';
echo '<img src="/style/icons/str.gif" alt="*"> <a href="index.php">Новости</a><br />';
echo '</div>';
include_once '../sys/inc/tfoot.php';
?>