public static function GetUserRole() { uUserLogin::TryLogin(); if (!isset($_SESSION['current_user'])) { return FALSE; } if (!self::$roleCache) { $obj = utopia::GetInstance('uUsersList'); $obj->BypassSecurity(true); $user = $obj->LookupRecord(array('user_id' => $_SESSION['current_user']), true); $obj->BypassSecurity(false); if ($user['_roles_pk'] === NULL) { return FALSE; } $obj = utopia::GetInstance('uUserRoles'); $obj->BypassSecurity(true); $role = $obj->LookupRecord($user['_roles_pk'], true); // clear fixed filters $obj->BypassSecurity(false); self::$roleCache = array($role['role_id'], utopia::jsonTryDecode($role['allow'])); } return self::$roleCache; }