<?php

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

foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'adm_check', 'user') as $inc) {
    require_once "../sys/inc/$inc.php";
}

access('adm_menu', null, 'index.php?' . SID);
adm_check();

$set['title'] = lang('Панель управления');

require_once H . 'sys/inc/thead.php';

aut();
err();

#Навигация
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_PANEL . "'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Панель управления');
echo "</small></div><br />";

if (isset($_POST['add']) && isset($_POST['name']) && $_POST['name'] != NULL && isset($_POST['url']) && $_POST['url'] != NULL && isset($_POST['counter'])) {
    $name = esc(stripcslashes(htmlspecialchars($_POST['name'])));
    $url = esc(stripcslashes(htmlspecialchars($_POST['url'])));
    $counter = esc(stripcslashes(htmlspecialchars($_POST['counter'])));
    $ps = $db->query("SELECT MAX(pos) FROM `adm_menu`")->fetch_row();
    $pos = $ps[0] + 1;
    $icon = preg_replace('#[^a-z0-9 _\-\.]#i', null, $_POST['icon']);

    $db->query("INSERT INTO `adm_menu` (`name`, `url`, `counter`, `pos`, `icon`) VALUES ('$name', '$url', '$counter', '$pos', '$icon')");

    $_SESSION['message'] = lang('Ссылка успешно добавлена');
    header("Location: ?");
}

if (isset($_POST['change']) && isset($_GET['id']) && isset($_POST['name']) && $_POST['name'] != NULL && isset($_POST['url']) && isset($_POST['counter'])) {
    $id = intval($_GET['id']);
    $name = esc(stripcslashes(htmlspecialchars($_POST['name'])));
    $url = esc(stripcslashes(htmlspecialchars($_POST['url'])));
    $counter = esc(stripcslashes(htmlspecialchars($_POST['counter'])));
    $icon = preg_replace('#[^a-z0-9 _\-\.]#i', null, $_POST['icon']);

    $db->query("UPDATE `adm_menu` SET `name` = '$name', `url` = '$url', `counter` = '$counter', `icon` = '$icon' WHERE `id` = '$id' LIMIT 1");
    $_SESSION['message'] = lang('Изменения сохранены');
    header("Location: ?");
}

if (isset($_GET['id']) && isset($_GET['act'])) {
    $countm = $db->super_query("SELECT COUNT(*) as count FROM `adm_menu` WHERE `id` = '" . intval($_GET['id']) . "'");
    if ($countm['count']) {
        $menu = $db->get_row($db->query("SELECT * FROM `adm_menu` WHERE `id` = '" . intval($_GET['id']) . "' LIMIT 1"));
    }

    if ($_GET['act'] == 'up') {
        $db->query("UPDATE `adm_menu` SET `pos` = '" . ($menu['pos']) . "' WHERE `pos` = '" . ($menu['pos'] - 1) . "' LIMIT 1");
        $db->query("UPDATE `adm_menu` SET `pos` = '" . ($menu['pos'] - 1) . "' WHERE `id` = '" . intval($_GET['id']) . "' LIMIT 1");

        $_SESSION['message'] = lang('Изменения сохранены');
        header("Location: ?");
    }
    if ($_GET['act'] == 'down') {
        $db->query("UPDATE `adm_menu` SET `pos` = '" . ($menu['pos']) . "' WHERE `pos` = '" . ($menu['pos'] + 1) . "' LIMIT 1");
        $db->query("UPDATE `adm_menu` SET `pos` = '" . ($menu['pos'] + 1) . "' WHERE `id` = '" . intval($_GET['id']) . "' LIMIT 1");

        $_SESSION['message'] = lang('Изменения сохранены');
        header("Location: ?");
    }
    if ($_GET['act'] == 'del') {
        $db->query("DELETE FROM `adm_menu` WHERE `id` = '" . intval($_GET['id']) . "' LIMIT 1");
        $_SESSION['message'] = lang('Пункт удален');
        header("Location: ?");
    }
}

$k_post = $db->super_query("SELECT COUNT(*) as count FROM adm_menu");
$k_post = $k_post['count'];

#Если нет разделов меню
if ($k_post == 0) {
    $doc->NoResult();
}

$q = $db->query("SELECT * FROM `adm_menu` ORDER BY `pos` ASC");
while ($post = $db->get_row($q)) {

    if (isset($_GET['id']) && $_GET['id'] == $post['id'] && isset($_GET['act']) && $_GET['act'] == 'edit') {

        echo "<div class='list-group-item-null list-group-item-grey dop'>";
        echo icons($post['icon']);
        echo "<div style='color:grey;' class='right'>$post[pos]</div>";

        echo "$post[pos]. $post[name] ($post[url])";

        echo "</div>";

        echo "<form class='list-group-item-null list-group-item-info dop' action='?id=$post[id]' method='post'>";

        $doc->Input('name', 'Название', 200, "$post[name]");
        $doc->Input('url', 'Ссылка', 200, "$post[url]");
        $doc->Input('counter', 'Счетчик', 200, "$post[counter]");
        $doc->Input('icon', 'Иконка', 50, "$post[icon]");

        echo "<br /><a href='http://fontawesome.io/icons/'><i class='fa fa-fa fa-fw'></i> <b>" . lang('Список иконок') . "</b></a><br /><br />";

        $doc->Button('btn btn-success btn-sm', 'change', 'save', 'Сохранить');
        $doc->Link('btn btn-secondary btn-sm', "?$passgen", null, 'Отмена');
        echo "</form>";
    } else {
        echo "<div class='list-group-item-null list-group-item-grey dop'>";
        echo "<span style='color:grey;' class='right'>";
        echo "<a href='?id=$post[id]&amp;act=edit&amp;$passgen' class='btn btn-secondary btn-sm' title='Редактировать'><i class='fa fa-edit fa-fw'></i></a> ";
        echo "<a href='?id=$post[id]&amp;act=up&amp;$passgen' class='btn btn-secondary btn-sm' title='Выше'><i class='fa fa-arrow-up fa-fw'></i></a> ";
        echo "</span>";

        echo icons($post['icon']) . " $post[name]<br />";

        echo "<font color='grey'>";
        echo "<small>Ссылка: $post[url]</small><br />";
        echo "<small>Счетчик: " . ($post['counter'] == null ? 'отсутствует' : $post['counter']) . "</small>";
        echo "</font>\n";

        echo "<span style='color:grey;' class='right'>";
        echo "<a href='?id=$post[id]&amp;act=del&amp;$passgen' class='btn btn-secondary btn-sm' title='Удалить'><i class='fa fa-trash-o fa-fw'></i></a> ";
        echo "<a href='?id=$post[id]&amp;act=down&amp;$passgen' class='btn btn-secondary btn-sm' title='Ниже'><i class='fa fa-arrow-down fa-fw'></i></a> ";
        echo "</span>";

        echo "</div>\n";
    }
}

if (isset($_GET['add'])) {
    echo "<form action='?add=$passgen' class='list-group-item-null list-group-item-info dop' method='post'>";

    $doc->Input('name', 'Название');
    $doc->Input('url', 'Ссылка');
    $doc->Input('counter', 'Счетчик');
    $doc->Input('icon', 'Иконка');

    echo "<br /><a href='http://fontawesome.io/icons/'><i class='fa fa-fa fa-fw'></i> <b>" . lang('Список иконок') . "</b></a><br /><br />";
    $doc->Button('btn btn-primary btn-sm', 'add', 'plus', 'Добавить');
    $doc->Link('btn btn-secondary btn-sm', "?$passgen", null, 'Отмена');

    echo "</form>";
} else {
    echo "<form action='?add=$passgen' class='list-group-item-null' method='post'>";

    echo "<button class='btn btn-primary btn-sm'><i class='fa fa-plus fa-fw'></i> Добавить пункт</button>";

    echo "</form>";
}

require_once H . 'sys/inc/tfoot.php';
