class auth

Permission/Auth class

Properties

$acl
$cache
$acl_options
$acl_forum_ids

Methods

acl($userdata)

Init permissions

array
obtain_user_data(int $user_id)

Retrieves data wanted by acl function from the database for the specified user.

acl_get($opt, $f = 0)

Look up an option if the option is prefixed with !, then the result becomes negated

array
acl_getf(string $opt, bool $clean = false)

Get forums with the specified permission setting

acl_getf_global($opt)

Get local permission state for any forum.

acl_gets()

Get permission settings (more than one)

acl_get_list($user_id = false, $opts = false, $forum_id = false)

Get permission listing based on user_id/options/forum_ids

acl_cache($userdata)

Cache data to user_permissions row

build_bitstring($hold_ary)

Build bitstring from permission set

acl_clear_prefetch($user_id = false)

Clear one or all users cached permission settings

acl_role_data($user_type, $role_type, $ug_id = false, $forum_id = false)

Get assigned roles

acl_raw_data($user_id = false, $opts = false, $forum_id = false)

Get raw acl data based on user/option/forum

acl_user_raw_data($user_id = false, $opts = false, $forum_id = false)

Get raw user based permission settings

acl_group_raw_data($group_id = false, $opts = false, $forum_id = false)

Get raw group based permission settings

acl_raw_data_single_user($user_id)

Get raw acl data based on user for caching user_permissions This function returns the same data as acl_raw_data(), but without the user id as the first key within the array.

_set_group_hold_ary($hold_ary, $option_id, $setting)

Private function snippet for setting a specific piece of the hold_ary

login($username, $password, $autologin = false, $viewonline = 1, $admin = 0)

Authentication plug-ins is largely down to Sergey Kanareykin, our thanks to him.

build_auth_option_statement($key, $auth_options, $sql_opts)

Fill auth_option statement for later querying based on the supplied options

Details

at line 29
acl($userdata)

Init permissions

Parameters

$userdata

at line 107
array obtain_user_data(int $user_id)

Retrieves data wanted by acl function from the database for the specified user.

Parameters

int $user_id

User ID

Return Value

array

User attributes

at line 167
acl_get($opt, $f = 0)

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.

Parameters

$opt
$f

at line 216
array acl_getf(string $opt, bool $clean = false)

Get forums with the specified permission setting

Parameters

string $opt

The permission name to lookup. If prefixed with !, the result is negated.

bool $clean

set to true if only values needs to be returned which are set/unset

Return Value

array

Contains the forum ids with the specified permission set to true. This is a nested array: array => forum_id => permission => true

at line 297
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...

Parameters

$opt

at line 341
acl_gets()

Get permission settings (more than one)

at line 378
acl_get_list($user_id = false, $opts = false, $forum_id = false)

Get permission listing based on user_id/options/forum_ids

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. a_foo, 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

Parameters

$user_id
$opts
$forum_id

at line 410
acl_cache($userdata)

Cache data to user_permissions row

Parameters

$userdata

at line 452
build_bitstring($hold_ary)

Build bitstring from permission set

Parameters

$hold_ary

at line 513
acl_clear_prefetch($user_id = false)

Clear one or all users cached permission settings

Parameters

$user_id

at line 568
acl_role_data($user_type, $role_type, $ug_id = false, $forum_id = false)

Get assigned roles

Parameters

$user_type
$role_type
$ug_id
$forum_id

at line 601
acl_raw_data($user_id = false, $opts = false, $forum_id = false)

Get raw acl data based on user/option/forum

Parameters

$user_id
$opts
$forum_id

at line 717
acl_user_raw_data($user_id = false, $opts = false, $forum_id = false)

Get raw user based permission settings

Parameters

$user_id
$opts
$forum_id

at line 769
acl_group_raw_data($group_id = false, $opts = false, $forum_id = false)

Get raw group based permission settings

Parameters

$group_id
$opts
$forum_id

at line 822
acl_raw_data_single_user($user_id)

Get raw acl data based on user for caching user_permissions This function returns the same data as acl_raw_data(), but without the user id as the first key within the array.

Parameters

$user_id

at line 905
_set_group_hold_ary($hold_ary, $option_id, $setting)

Private function snippet for setting a specific piece of the hold_ary

Parameters

$hold_ary
$option_id
$setting

at line 934
login($username, $password, $autologin = false, $viewonline = 1, $admin = 0)

Authentication plug-ins is largely down to Sergey Kanareykin, our thanks to him.

Parameters

$username
$password
$autologin
$viewonline
$admin

at line 1067
build_auth_option_statement($key, $auth_options, $sql_opts)

Fill auth_option statement for later querying based on the supplied options

Parameters

$key
$auth_options
$sql_opts