Файл: panel/user_group.php
Строк: 269
<?php
/* DCMS Special
 * Дата последнего редактирования 05.02.2016
 * Модифицировал densnet
 */
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'adm_check', 'user') as $inc) {
    require_once "../sys/inc/$inc.php";
}
access('user_group', null, 'index.php?' . SID);
$set['title'] = lang('Должности');
include_once H . 'sys/inc/thead.php';
aut();
if (isset($_GET['gid']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '" . intval($_GET['gid']) . "'"), 0) != 0) {
    #Навигация
    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='/panel/'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo "<a href='/panel/user_group.php'>" . lang('Должности') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo mysql_result(mysql_query("SELECT `name` FROM `user_group` WHERE `id` = '" . intval($_GET['gid']) . "'"), 0);
    echo "</small></div><br />";
    echo "<div class='list-group-item-null list-group-item-info'>Группа: " . mysql_result(mysql_query("SELECT `name` FROM `user_group` WHERE `id` = '" . intval($_GET['gid']) . "'"), 0) . "</div>n";
    if (intval($_GET['gid']) != $user['id'] && intval($_GET['gid']) > 1 && isset($_GET['gid']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '" . intval($_GET['gid']) . "' AND `group_access` = '" . intval($_GET['gid']) . "'"), 0) != 0) {
        mysql_query("UPDATE `user` SET `group_access` = '1' WHERE `id` = '" . intval($_GET['gid']) . "' AND `group_access` < '$user[group_access]'");
    }
    $k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `group_access` = '" . intval($_GET['gid']) . "'"), 0);
    $k_page = k_page($k_post, $set['p_str']);
    $page = page($k_page);
    $start = $set['p_str'] * $page - $set['p_str'];
    if (!$k_post) {
        $doc->NoResult();
    }
    $l = mysql_query("SELECT * FROM `user` WHERE `group_access` = '" . intval($_GET['gid']) . "' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
    while ($ank = mysql_fetch_array($l)) {
        $ank = get_user($ank['id']);
        echo "<table class='list-group-item-null'><tr><td class='icon14'>";
        avatar($ank['id'], '48', 'border-radius: 2px;');
        echo "</td><td class='null'>";
        echo user($ank['id']) . "n";
        echo "<br />";
        if ($ank['group_access'] > 1 && $ank['id'] != $user['id'] && $user['group_access'] > $ank['group_access'])
            echo "<a href='?gid=" . intval($_GET['gid']) . "&zid=$ank[id]'>(снять)</a>n";
        echo "Регистрация: " . date::time($ank['date_reg']) . "<br />n";
        echo "Посл. посещение: " . date::time($ank['date_last']) . "<br />n";
        echo "UA: $ank[ua]<br />n";
        if ($ank['id'] != $user['id'] && $user['group_access'] > $ank['group_access']) {
            echo "<a href='user.php?id=$ank[id]'>Редактировать профиль</a>n";
        }
        echo "</td></tr></table>";
        echo "<div class='hr'></div>";
    }
    if ($k_page > 1) {
        str("?gid=" . intval($_GET['id']) . "&", $k_page, $page);
    }
    include_once H . 'sys/inc/tfoot.php';
    exit;
} elseif (isset($_GET['add'])) {
    #Навигация
    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='/panel/'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo "<a href='/panel/user_group.php'>" . lang('Должности') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo lang('Новая должность');
    echo "</small></div><br />";
    if (isset($_GET['ok'])) {
        $name = $_POST['name'];
        if (utf8_strlen($name) < 1) {
            $err[] = lang('Введите название');
        }
        if (utf8_strlen($msg_edit) > 1024) {
            $err[] = lang('Название слишком длинное');
        }
        $name = mysql_real_escape_string($name);
        if (!is_numeric($_POST['id'])) {
            $err[] = lang('Ошибка id');
        }
        if (!is_numeric($_POST['level'])) {
            $err[] = lang('Ошибка уровня');
        }
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '$_POST[id]'"), 0) != 0) {
            $err[] = lang('Должность с таким id уже есть');
        }
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `name` = '$name'"), 0) != 0) {
            $err[] = lang('Должность с таким названием уже есть');
        }
        if (!isset($err)) {
            admin_log('Должности', 'Создание должности', "Создал(а) должность $name");
            mysql_query("INSERT INTO `user_group` (`id`, `name`, `level`) values('$_POST[id]', '$name', '$_POST[level]')");
            $_SESSION['message'] = lang('Должность успешно создана');
            header("Location: ?");
        }
    }
    err();
    echo "<form method='post' action='?add&ok' name='message' class='list-group-item-null'>n";
    $doc->Input('name', 'Название');
    $doc->Input('id', 'ID');
    $doc->Input('level', 'Уровень');
    echo "<br />n";
    $doc->Button('btn btn-primary btn-sm', null, 'plus', 'Добавить');
    echo "</form>n";
    include_once H . 'sys/inc/tfoot.php';
    exit;
} elseif (isset($_GET['edit']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '" . intval($_GET['edit']) . "'"), 0) != 0) {
    $group = mysql_fetch_array(mysql_query("SELECT * FROM `user_group` WHERE `id` = '" . intval($_GET['edit']) . "' LIMIT 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='/panel/'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo "<a href='/panel/user_group.php'>" . lang('Должности') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
    echo lang('Редактирование');
    echo "</small></div><br />";
    if (isset($_GET['ok'])) {
        $name = $_POST['name'];
        if (utf8_strlen($name) < 1) {
            $err[] = lang('Введите название');
        }
        if (utf8_strlen($msg_edit) > 1024) {
            $err[] = lang('Название слишком длинное');
        }
        $name = mysql_real_escape_string($name);
        if (!is_numeric($_POST['id'])) {
            $err[] = lang('Ошибка id');
        }
        if (!is_numeric($_POST['level'])) {
            $err[] = lang('Ошибка уровня');
        }
        $group_id = mysql_fetch_array(mysql_query("SELECT * FROM `user_group` WHERE `id` = '$_POST[id]' LIMIT 1"));
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '" . intval($_POST['id']) . "' AND `id` != '$group[id]'"), 0) != 0) {
            $err[] = lang('Должность с таким id уже есть');
        }
        $group_name = mysql_fetch_array(mysql_query("SELECT * FROM `user_group` WHERE `name` = '$name' AND `id` = '$group[id]' LIMIT 1"));
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `name` = '$name'"), 0) != 0 && $group_name['name'] != $group['name']) {
            $err[] = lang('Должность с таким названием уже есть');
        }
        if (!isset($err)) {
            admin_log('Должности', 'Редактирование должности', "Переименована должность $group[name] в $name");
            mysql_query("UPDATE `user_group` SET `name` = '$name', `id` = '" . intval($_POST['id']) . "', `level` = '" . intval($_POST['level']) . "' WHERE `id` = '$group[id]' LIMIT 1");
            $_SESSION['message'] = lang('Изменения сохранены');
            header("Location: ?");
        }
    }
    err();
    echo "<form method='post' action='?edit=$group[id]&ok' name='message' class='list-group-item-null'>n";
    $doc->Input('name', 'Название', 50, "" . htmlspecialchars($group['name']) . "");
    $doc->Input('id', 'ID', 2, "" . intval($group['id']) . "");
    $doc->Input('level', 'Уровень', 1, "" . intval($group['level']) . "");
    echo "<br />n";
    $doc->Button('btn btn-success btn-sm', null, 'save', 'Сохранить');
    echo "</form>n";
    include_once H . 'sys/inc/tfoot.php';
    exit;
} elseif (isset($_GET['del']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '" . intval($_GET['del']) . "' LIMIT 1"), 0) != 0) {
    if (isset($_GET['ok'])) {
        $group = mysql_fetch_array(mysql_query("SELECT * FROM `user_group` WHERE `id` = '" . intval($_GET['del']) . "' LIMIT 1"));
        admin_log('Должности', 'Удаление должности', "Удалил(а) должность $group[name]");
        mysql_query("DELETE FROM `user_group` WHERE `id` = '" . intval($_GET['del']) . "' LIMIT 1");
        header("Location: ?");
    } else {
        #Навигация
        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='/panel/'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
        echo "<a href='/panel/user_group.php'>" . lang('Должности') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
        echo lang('Удаление');
        echo "</small></div><br />";
        echo "<div class='list-group-item-null'>n";
        echo "Вы действительно хотите удалить ету должность?<br/>";
        echo "<a href='?del=" . intval($_GET['del']) . "&ok' class='btn btn-success btn-sm'>Да</a> <a href='?' class='btn btn-secondary btn-sm'>Нет</a>";
        echo "</div>";
    }
    include_once H . 'sys/inc/tfoot.php';
    exit;
}
#Навигация
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='/panel/'>" . lang('Панель управления') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Должности');
echo "</small></div><br />";
echo "<a href='?add' class='list-group-item-null list-group-item-info'><i class='fa fa-plus fa-fw'></i> " . lang('Добавить новую должность') . "</a>";
$l = mysql_query("SELECT * FROM `user_group`");
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group`"), 0) == 0) {
    $doc->NoResult();
}
while ($list = mysql_fetch_array($l)) {
    echo "<div class='list-group-item-null'>n";
    echo "<a href='?gid=$list[id]'><i class='fa fa-crop fa-fw'></i> " . htmlspecialchars($list['name']) . "</a> <span class='label label-pill label-info'>" . intval($list['id']) . " / " . intval($list['level']) . "</span>n";
    echo "<span style='float:right'>n";
    echo "<a class='btn btn-secondary btn-sm hint--left' href='?edit=$list[id]' data-hint='" . lang('Редактировать') . "'><i class='fa fa-edit fa-fw'></i></a> ";
    echo "<a class='btn btn-secondary btn-sm hint--left' href='?del=$list[id]' data-hint='" . lang('Удалить') . "'><i class='fa fa-trash-o fa-fw'></i></a>n";
    echo "</span>";
    echo "</div>n";
    echo "<div class='hr'></div>";
}
include_once H . 'sys/inc/tfoot.php';