class auth_admin extends auth
ACP Permission/Auth class
Properties
$acl | ||
$cache | ||
$acl_options | ||
$acl_forum_ids |
Methods
acl($userdata)
Init permissions |
from auth | |
array |
obtain_user_data(int $user_id)
Retrieves data wanted by acl function from the database for the specified user. |
from auth |
_fill_acl($user_permissions)
Fill ACL array with relevant bitstrings from user_permissions column |
from auth | |
acl_get($opt, $f)
Look up an option if the option is prefixed with !, then the result becomes negated |
from auth | |
array |
acl_getf(string $opt, bool $clean = false)
Get forums with the specified permission setting |
from auth |
acl_getf_global($opt)
Get local permission state for any forum. |
from auth | |
acl_gets()
Get permission settings (more than one) |
from auth | |
acl_get_list($user_id = false, $opts = false, $forum_id = false)
Get permission listing based on userid/options/forumids |
from auth | |
acl_cache($userdata)
Cache data to user_permissions row |
from auth | |
build_bitstring($hold_ary)
Build bitstring from permission set |
from auth | |
acl_clear_prefetch($user_id = false)
Clear one or all users cached permission settings |
from auth | |
acl_role_data($user_type, $role_type, $ug_id = false, $forum_id = false)
Get assigned roles |
from auth | |
acl_raw_data($user_id = false, $opts = false, $forum_id = false)
Get raw acl data based on user/option/forum |
from auth | |
acl_user_raw_data($user_id = false, $opts = false, $forum_id = false)
Get raw user based permission settings |
from auth | |
acl_group_raw_data($group_id = false, $opts = false, $forum_id = false)
Get raw group based permission settings |
from auth | |
acl_raw_data_single_user($user_id)
Get raw acl data based on user for caching userpermissions This function returns the same data as aclraw_data(), but without the user id as the first key within the array. |
from auth | |
_set_group_hold_ary($hold_ary, $option_id, $setting)
Private function snippet for setting a specific piece of the hold_ary |
from auth | |
login($username, $password, $autologin = false, $viewonline = 1, $admin)
Authentication plug-ins is largely down to Sergey Kanareykin, our thanks to him. |
from auth | |
build_auth_option_statement($key, $auth_options, $sql_opts)
Fill auth_option statement for later querying based on the supplied options |
from auth | |
auth_admin()
Init auth settings |
||
get_mask(set|view $mode, mixed $user_id = false, mixed $group_id = false, mixed $forum_id = false, string $auth_option = false, local|global $scope = false, ACL_NEVER|ACL_NO|ACL_YES $acl_fill = ACL_NEVER)
Get permission mask This function only supports getting permissions of one type (for example a_) |
||
get_role_mask($role_id)
Get permission mask for roles This function only supports getting masks for one role |
||
display_mask($mode, $permission_type, $hold_ary, $user_mode = 'user', $local = false, $group_display = true)
Display permission mask (assign to template) |
||
display_role_mask($hold_ary)
Display permission mask for roles |
||
acl_add_option($options)
NOTE: this function is not in use atm Add a new option to the list ... |
||
acl_set($ug_type, $forum_id, $ug_id, $auth, $role_id, $clear_prefetch = true)
Set a user or group ACL record |
||
acl_set_role($role_id, $auth)
Set a role-specific ACL record |
||
acl_delete($mode, $ug_id = false, $forum_id = false, $permission_type = false)
Remove local permission |
||
assign_cat_array($category_array, $tpl_cat, $tpl_mask, $ug_id, $forum_id, $s_view, $show_trace = false)
Assign category to template used by display_mask() |
||
build_permission_array($permission_row, $content_array, $categories, $key_sort_array)
Building content array from permission rows with explicit key ordering used by display_mask() |
||
ghost_permissions($from_user_id, $to_user_id)
Use permissions from another user. |
Details
in auth at line 29
public
acl($userdata)
Init permissions
in auth at line 109
public array
obtain_user_data(int $user_id)
Retrieves data wanted by acl function from the database for the specified user.
in auth at line 126
public
_fill_acl($user_permissions)
Fill ACL array with relevant bitstrings from user_permissions column
in auth at line 169
public
acl_get($opt, $f)
Look up an option if the option is prefixed with !, then the result becomes negated
If a forum id is specified the local option will be combined with a global option if one exist. If a forum id is not specified, only the global option will be checked.
in auth at line 218
public array
acl_getf(string $opt, bool $clean = false)
Get forums with the specified permission setting
in auth at line 299
public
acl_getf_global($opt)
Get local permission state for any forum.
Returns true if user has the permission in one or more forums, false if in no forum. If global option is checked it returns the global state (same as acl_get($opt)) Local option has precedence...
in auth at line 343
public
acl_gets()
Get permission settings (more than one)
in auth at line 380
public
acl_get_list($user_id = false, $opts = false, $forum_id = false)
Get permission listing based on userid/options/forumids
Be careful when using this function with permissions a_, m_, u_ and f_ ! It may not work correctly. When a user group grants an a* permission, e.g. afoo, but the user's afoo permission is set to "Never", then the user does not in fact have the a permission. But the user will still be listed as having the a_ permission.
For more information see: http://tracker.phpbb.com/browse/PHPBB3-10252
in auth at line 412
public
acl_cache($userdata)
Cache data to user_permissions row
in auth at line 454
public
build_bitstring($hold_ary)
Build bitstring from permission set
in auth at line 515
public
acl_clear_prefetch($user_id = false)
Clear one or all users cached permission settings
in auth at line 562
public
acl_role_data($user_type, $role_type, $ug_id = false, $forum_id = false)
Get assigned roles
in auth at line 595
public
acl_raw_data($user_id = false, $opts = false, $forum_id = false)
Get raw acl data based on user/option/forum
in auth at line 711
public
acl_user_raw_data($user_id = false, $opts = false, $forum_id = false)
Get raw user based permission settings
in auth at line 763
public
acl_group_raw_data($group_id = false, $opts = false, $forum_id = false)
Get raw group based permission settings
in auth at line 816
public
acl_raw_data_single_user($user_id)
Get raw acl data based on user for caching userpermissions This function returns the same data as aclraw_data(), but without the user id as the first key within the array.
in auth at line 899
public
_set_group_hold_ary($hold_ary, $option_id, $setting)
Private function snippet for setting a specific piece of the hold_ary
in auth at line 928
public
login($username, $password, $autologin = false, $viewonline = 1, $admin)
Authentication plug-ins is largely down to Sergey Kanareykin, our thanks to him.
in auth at line 1061
public
build_auth_option_statement($key, $auth_options, $sql_opts)
Fill auth_option statement for later querying based on the supplied options
at line 30
public
auth_admin()
Init auth settings
at line 76
public
get_mask(set|view $mode, mixed $user_id = false, mixed $group_id = false, mixed $forum_id = false, string $auth_option = false, local|global $scope = false, ACL_NEVER|ACL_NO|ACL_YES $acl_fill = ACL_NEVER)
Get permission mask This function only supports getting permissions of one type (for example a_)
at line 229
public
get_role_mask($role_id)
Get permission mask for roles This function only supports getting masks for one role
at line 267
public
display_mask($mode, $permission_type, $hold_ary, $user_mode = 'user', $local = false, $group_display = true)
Display permission mask (assign to template)
at line 635
public
display_role_mask($hold_ary)
Display permission mask for roles
at line 720
public
acl_add_option($options)
NOTE: this function is not in use atm Add a new option to the list ...
$options is a hash of form -> $options = array( 'local' => array('option1', 'option2', ...), 'global' => array('optionA', 'optionB', ...) );
at line 830
public
acl_set($ug_type, $forum_id, $ug_id, $auth, $role_id, $clear_prefetch = true)
Set a user or group ACL record
at line 963
public
acl_set_role($role_id, $auth)
Set a role-specific ACL record
at line 1026
public
acl_delete($mode, $ug_id = false, $forum_id = false, $permission_type = false)
Remove local permission
at line 1134
public
assign_cat_array($category_array, $tpl_cat, $tpl_mask, $ug_id, $forum_id, $s_view, $show_trace = false)
Assign category to template used by display_mask()
at line 1223
public
build_permission_array($permission_row, $content_array, $categories, $key_sort_array)
Building content array from permission rows with explicit key ordering used by display_mask()
at line 1283
public
ghost_permissions($from_user_id, $to_user_id)
Use permissions from another user.
This transferes a permission set from one user to another. The other user is always able to revert back to his permission set. This function does not check for lower/higher permissions, it is possible for the user to gain "more" permissions by this. Admin permissions will not be copied.