Файл: panel/right.php
Строк: 23
<?php
/**
*    Author: Elime;
*    ICQ: 618878;
*    E-mail: elime4@gmail.com;
*/
require '../system/core.php';
/* Проверка прав доступа */
if(!$login) message('Ошибка авторизации!', '/panel/login.php');
if($user['id'] != 1) message('Недостаточно прав!', '/panel/index.php');
/* Если не указан пользователь */
if(!isset($_GET['id']))
{
    message('Вы не указали пользователя!', '/panel/users.php');
}
/* Ищем пользователя в БД */
$query = $db->query("SELECT * FROM `users` WHERE `id`='".num($_GET['id'])."'");
if($db->num($query) != 1)
{
    message('Указанный пользователь не найден!', '/panel/users.php');
}
$user_result = $db->fetch($query);
/* Получаем список прав пользователя */
$array = array();
$query = $db->query("SELECT * FROM `rights` WHERE `user_id`='".num($_GET['id'])."'");
while($result = $db->fetch($query))
{
    $array[] = $result['right'];
}
$data['array'] = $array;
$data['login'] = out($user_result['login']);
/* Если переданы права */
if(isset($_POST['right']))
{
    $right = $_POST['right'];
    
    
    /* Проверяем указанные права */
    $rights = array();
    foreach($right as $value)
    {
        $value = num($value);
        if($value < 1 or $value > 10 or in_array($value, $rights))
        {
            message('Произошла ошибка при установке прав для пользователя!');
        }
        $rights[] = $value;
    }
    
    
    /* Удаляем старые права */
    $db->query("DELETE FROM `rights` WHERE `user_id`='".$user_result['id']."'");
    
    
    /* Записываем новые права */
    foreach($rights as $value)
    {
        $db->query("INSERT INTO `rights` SET `user_id`='".$user_result['id']."', `right`='".$value."'");
    }
    
    
    /* Записываем в логи кто изменил права доступа */
    $action = $user['login'].' изменил права доступа для пользователя: "'.$user_result['login'].'".';
    $db->query("INSERT INTO `users_log` SET `user_id`='".$user['id']."', `action`='".in($action)."', `time`='".time()."'");
    
    
    /* Выводим сообщение */
    message('Права доступа успешно изменены!', '/admin/users.php');
}
/* Выводим страницу */
$data['title'] = 'Изменить права';
$tpl->display('panel/right', $data);
?>