1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-11 19:24:01 +02:00

[ticket/16345] Small improvements

PHPBB3-16346
This commit is contained in:
rubencm
2020-06-07 02:15:35 +00:00
parent 3cceeb45bf
commit 774c609c4a
284 changed files with 1380 additions and 835 deletions

View File

@@ -95,8 +95,6 @@ class auth
$this->acl_cache($userdata);
$this->_fill_acl($userdata['user_permissions']);
}
return;
}
/**
@@ -213,7 +211,7 @@ class auth
* @param bool $clean set to true if only values needs to be returned which are set/unset
*
* @return array Contains the forum ids with the specified permission set to true.
This is a nested array: array => forum_id => permission => true
* This is a nested array: array => forum_id => permission => true
*/
function acl_getf($opt, $clean = false)
{
@@ -524,19 +522,19 @@ class auth
ORDER BY role_id ASC';
$result = $db->sql_query($sql);
$this->role_cache = array();
$role_cache = array();
while ($row = $db->sql_fetchrow($result))
{
$this->role_cache[$row['role_id']][$row['auth_option_id']] = (int) $row['auth_setting'];
$role_cache[$row['role_id']][$row['auth_option_id']] = (int) $row['auth_setting'];
}
$db->sql_freeresult($result);
foreach ($this->role_cache as $role_id => $role_options)
foreach ($role_cache as $role_id => $role_options)
{
$this->role_cache[$role_id] = serialize($role_options);
$role_cache[$role_id] = serialize($role_options);
}
$cache->put('_role_cache', $this->role_cache);
$cache->put('_role_cache', $role_cache);
// Now empty user permissions
$where_sql = '';
@@ -562,8 +560,6 @@ class auth
*/
$vars = array('user_id');
extract($phpbb_dispatcher->trigger_event('core.acl_clear_prefetch_after', compact($vars)));
return;
}
/**
@@ -828,9 +824,9 @@ class auth
global $db, $cache;
// Check if the role-cache is there
if (($this->role_cache = $cache->get('_role_cache')) === false)
if (($role_cache = $cache->get('_role_cache')) === false)
{
$this->role_cache = array();
$role_cache = array();
// We pre-fetch roles
$sql = 'SELECT *
@@ -840,16 +836,16 @@ class auth
while ($row = $db->sql_fetchrow($result))
{
$this->role_cache[$row['role_id']][$row['auth_option_id']] = (int) $row['auth_setting'];
$role_cache[$row['role_id']][$row['auth_option_id']] = (int) $row['auth_setting'];
}
$db->sql_freeresult($result);
foreach ($this->role_cache as $role_id => $role_options)
foreach ($role_cache as $role_id => $role_options)
{
$this->role_cache[$role_id] = serialize($role_options);
$role_cache[$role_id] = serialize($role_options);
}
$cache->put('_role_cache', $this->role_cache);
$cache->put('_role_cache', $role_cache);
}
$hold_ary = array();
@@ -865,7 +861,7 @@ class auth
// If a role is assigned, assign all options included within this role. Else, only set this one option.
if ($row['auth_role_id'])
{
$hold_ary[$row['forum_id']] = (empty($hold_ary[$row['forum_id']])) ? unserialize($this->role_cache[$row['auth_role_id']]) : $hold_ary[$row['forum_id']] + unserialize($this->role_cache[$row['auth_role_id']]);
$hold_ary[$row['forum_id']] = (empty($hold_ary[$row['forum_id']])) ? unserialize($role_cache[$row['auth_role_id']]) : $hold_ary[$row['forum_id']] + unserialize($role_cache[$row['auth_role_id']]);
}
else
{
@@ -890,9 +886,9 @@ class auth
{
$this->_set_group_hold_ary($hold_ary[$row['forum_id']], $row['auth_option_id'], $row['auth_setting']);
}
else if (!empty($this->role_cache[$row['auth_role_id']]))
else if (!empty($role_cache[$row['auth_role_id']]))
{
foreach (unserialize($this->role_cache[$row['auth_role_id']]) as $option_id => $setting)
foreach (unserialize($role_cache[$row['auth_role_id']]) as $option_id => $setting)
{
$this->_set_group_hold_ary($hold_ary[$row['forum_id']], $option_id, $setting);
}