<?php

/* DCMS Special
 * Дата последнего редактирования 09.10.2016
 * Модифицировал densnet
 */

if (access('forum_razd_create')) {
    if (isset($_POST['create'])) {
        $name = $db->safesql(trim($_POST['name']));
        $description = $db->safesql(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'])));
        $q = $db->super_query("SELECT COUNT(*) as count FROM `forum_razdels` WHERE `name` = '$name' AND `id_forum` = '$forum->id'");
        $isset_name = $q['count'];
        $q = $db->super_query("SELECT COUNT(*) as count FROM `forum_razdels` WHERE `number` = '$number' AND `id_forum` = '$forum->id'");
        $isset_number = $q['count'];

        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");

            $db->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;
    }

    $q = $db->super_query("SELECT MAX(`number`) as number FROM `forum_razdels` WHERE `id_forum` = '$forum->id'");
    $next_number = $q['number'] + 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;
