Проверяет права доступа пользователя по group_access, возвращает true в случае успеха, и false если группа пользователя не имеет прав.
$access (array, string) — Права доступа, можно указать несколько значений в виде массива
$user_id — ID пользователя, по умолчанию текущий пользователь
Использование
// Синтаксис
is_user_access($access, $user_id)
// Пример
if (is_user_access('adm_panel_show')) {
// Пользователь от которого идет запрос может видеть админку
}
// Пример с ID пользователя
if (is_user_access('adm_panel_show', 12)) {
// Пользователь с ID 12 может видеть админку
}
Код функции
function is_user_access($access, $user_id = '')
{
if ($user_id == '')
$user = get_user(get_user_id());
else
$user = get_user($user_id);
if (!isset($user['group_access']) || $user['group_access'] == null) {
return false;
}
if (!is_array($access)) {
$access = array($access);
}
$is_group_access = db::count("SELECT COUNT(`id_group`) FROM `user_group_access` WHERE `id_group` = '" . $user['group_access'] . "' AND `id_access` IN('" . join("', '", $access) . "')");
return ($is_group_access ? true : false);
}