<?php
/* класс уровней пользователей*/
class level extends core
{
/* названия должностей*/
public static function name($level) {
$arr = array(
'0'=>'Бродяга',
'1'=>'Новичек',
'2'=>'Наш чел',
'3'=>'Мастер',
'4'=>'Элитный Мастер',
'5'=>'Модератор',
'6'=>'Администратор',
'7'=>'Создатель сайта',
'8'=>'Служба безопасности',
'9'=>'Автор проекта'
);
return $arr[$level];
}
/* функция определяющая доступ администрации к определенным функциям
все просто
* if($ac=='privat') это произвольное имя функции для проверки доступа. проверка доступа выглядит так level::dostup('privat')
* $access = array(5, 8); Это уровни которым доступна функция, перечесление через запятую
*/
public static function dostup($ac = NULL) {
if (!empty(core::$set[$ac])){
$access = explode(',',core::$set[$ac]);
}
if($ac=='setting')$access = array(9);// Системные настройки
if (in_array(core::$user['level'], $access)) { // если совпало возвращаем истину
return true;
}
return false; // если совпадений не найдено возвращаем лож
}
/*только для тех, у кого уровень доступа больше или равен $level*/
public static function levels($levels=0,$link = NULL)
{
if (!isset(core::$user_id) || core::$user['level']<$levels)
{
if ($link==NULL)$link='/index.php';
header("Location: $link");
exit;
}
}
}