Файл: modules/forum/action/create_razdel.php
Строк: 98
<?php
/* DCMS Special
* Дата последнего редактирования 25.09.2016
* Модифицировал densnet
*/
if (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;
$icon = esc(stripcslashes(htmlspecialchars($_POST['icon'])));
$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) > 100) {
$_SESSION['err'] = lang('В поле Название раздела можно использовать от 3 до 100 символов');
} elseif ($number < 0 || $number == NULL || $number == 0) {
$_SESSION['err'] = lang('Введите уровень');
} elseif (mb_strlen($description) > 100) {
$_SESSION['err'] = lang('Слишком длинное описание раздела');
} elseif ($isset_number > 0) {
$_SESSION['err'] = lang('Данный уровень уже использует другой раздел этого подфорума');
} elseif ($isset_name > 0) {
$_SESSION['err'] = lang('Раздел с таким названием уже существует в этом подфоруме');
} else {
admin_log(lang('Форум'), lang('Разделы'), lang('Создание раздела') . " $name " . lang('в подфоруме') . " $forum->name");
mysql_query("INSERT INTO forum_razdels SET id_forum = '$forum->id', name = '$name', description = '$description', icon = '$icon', number = '$number', type = '$type', output = '$output'");
$_SESSION['message'] = lang('Раздел успешно создан');
header('Location: ' . DIR_FORUM . $forum->id . '/');
exit;
}
} elseif (isset($_POST['cancel'])) {
header('Location: ' . DIR_FORUM . $forum->id . '/');
exit;
}
$next_number = mysql_result(mysql_query('SELECT MAX(`number`) FROM `forum_razdels` WHERE `id_forum` = ' . $forum->id), 0) + 1;
#Навигация
echo "<div class='list-group-item-null list-group-item-grey'><small>";
echo "<a href='/' class='hint--right' data-hint='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='" . DIR_FORUM . "'>" . lang('Форум') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='" . DIR_FORUM . "$forum->id/'>" . toOutput($forum->name, 1, 1, 0, 0, 0) . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Создание раздела');
echo "</small></div><br />";
echo "<form action='" . DIR_FORUM . "$forum->id/create_razdel.html' class='list-group-item-null' method='post'>";
$doc->Input('name', 'Название раздела');
$doc->Textarea('description', 'Описание раздела');
$doc->Input('icon', 'Иконка', null, "folder");
$doc->Input('number', 'Позиция', null, "$next_number");
echo lang('Могут создавать темы только') . ":<br />";
$doc->Checkbox('type', 'Администраторы + модераторы', '1');
echo "<hr>";
echo lang('Вывод раздела') . ":<br />";
$doc->Checkbox('output', 'Отображать посл. 3 темы', '1');
echo "<hr>";
$doc->Button('btn btn-primary btn-sm', 'create', null, 'Создать');
$doc->Button('btn btn-secondary btn-sm', 'cancel', null, 'Отменить');
echo "</form>";
require_once H . 'sys/inc/tfoot.php';
} else {
header('Location: ' . DIR_FORUM . $forum->id . '/');
}
exit;