Файл: modules/forum/action/create_razdel.php
Строк: 89
<?php
/* DCMS S (Special)
* Версия файла 0.0.1
* Дата последнего редактирования 23.11.2015
* Модифицировал densnet
* Автор yadalay
*/
if (user::access('forum_razd_create')) {
if (isset($_POST['create'])) {
$name = mysql_real_escape_string(trim($_POST['name']));
$description = mysql_real_escape_string(trim($_POST['description']));
$number = intval($_POST['number']);
$type = (isset($_POST['type'])) ? 1 : 0;
$output = (isset($_POST['output'])) ? 1 : 0;
$isset_name = mysql_result(mysql_query('SELECT COUNT(*) FROM `forum_razdels` WHERE `name` = "' . $name . '" AND `id_forum` = ' . $forum->id), 0);
$isset_number = mysql_result(mysql_query('SELECT COUNT(*) FROM `forum_razdels` WHERE `number` = ' . $number . ' AND `id_forum` = ' . $forum->id), 0);
if (mb_strlen($name) < 3 || mb_strlen($name) > 40) {
echo "<div class = 'alert alert-danger'>В поле 'Название раздела' можно использовать от 3 до 40 символов.</div>";
} elseif ($number < 0 || $number == NULL || $number == 0) {
echo "<div class = 'alert alert-danger'>Введите уровень.</div>";
} elseif (mb_strlen($description) > 100) {
echo "<div class = 'alert alert-danger'>Слишком длинное описание раздела.</div>";
} elseif ($isset_number > 0) {
echo "<div class = 'alert alert-danger'>Данный уровень уже использует другой раздел этого подфорума.</div>";
} elseif ($isset_name > 0) {
echo "<div class = 'alert alert-danger'>Раздел с таким названием уже существует в этом подфоруме.</div>";
} else {
admin_log('Форум', 'Разделы', 'Создание раздела "' . $name . '" в подфоруме "' . $forum->name . '".');
mysql_query('INSERT INTO `forum_razdels` SET `id_forum` = ' . $forum->id . ', `name` = "' . $name . '", `description` = "' . $description . '", `number` = ' . $number . ', `type` = ' . $type . ', `output` = ' . $output);
msg('Раздел успешно создан');
header('Location: /modules/forum/' . $forum->id . '/');
exit;
}
} elseif (isset($_POST['cancel'])) {
header('Location: /modules/forum/' . $forum->id . '/');
exit;
}
$next_number = mysql_result(mysql_query('SELECT MAX(`number`) FROM `forum_razdels` WHERE `id_forum` = ' . $forum->id), 0) + 1;
echo "<form action = '" . DIR_FORUM . "$forum->id/create_razdel.html' class = 'card-block' method = 'post'>";
echo "Название раздела (40 символов):<br />";
echo "<input class='form-control' type='text' name='name' value='' />";
echo "Описание раздела (100 символов):<br />";
echo "<textarea class='form-control' rows='3' name = 'description'></textarea>";
echo "Позиция: <input class='form-control' type = 'text' name = 'number' value = '$next_number' />";
echo "Могут создавать темы только:</b><br />";
echo "<label class='c-input c-checkbox'><input type = 'checkbox' name = 'type' value = '1' /><span class='c-indicator'></span> Администраторы + модераторы</label><br />";
echo "Вывод раздела:<br />";
echo "<label class='c-input c-checkbox'><input type = 'checkbox' name = 'output' value = '1' /><span class='c-indicator'></span> Отображать посл. 3 темы вместо описания</label><br />";
echo "<button name='create' class='btn btn-success'>Создать</button> ";
echo "<button name='cancel' class='btn btn-default'>Отменить</button>";
echo "</form>";
require_once H . 'sys/inc/tfoot.php';
} else {
header('Location: /modules/forum/' . $forum->id . '/');
}
exit;