Файл: 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';