function user_roles in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/user/user.module \user_roles()
Retrieve an array of roles matching specified conditions.
Parameters
bool $membersonly: (optional) Set this to TRUE to exclude the 'anonymous' role. Defaults to FALSE.
string|null $permission: (optional) A string containing a permission. If set, only roles containing that permission are returned. Defaults to NULL, which returns all roles.
Return value
\Drupal\user\RoleInterface[] An associative array with the role id as the key and the role object as value.
7 calls to user_roles()
- admin_toolbar_tools_menu_links_discovered_alter in modules/
admin_toolbar/ admin_toolbar_tools/ admin_toolbar_tools.module - Implements hook_menu_links_discovered_alter().
- EntityOperationsTest::testEntityOperationAlter in core/
modules/ system/ src/ Tests/ Entity/ EntityOperationsTest.php - Checks that hook_entity_operation_alter() can add an operation.
- FilterFormat::postSave in core/
modules/ filter/ src/ Entity/ FilterFormat.php - Acts on a saved entity before the insert or update hook is invoked.
- Roles::preRender in core/
modules/ user/ src/ Plugin/ views/ field/ Roles.php - Runs before any fields are rendered.
- UninstallTest::testUserPermsUninstalled in core/
modules/ system/ src/ Tests/ Module/ UninstallTest.php - Tests the hook_modules_uninstalled() of the user module.
5 string references to 'user_roles'
- HandlerFilterRolesTest::testDependencies in core/
modules/ user/ src/ Tests/ Views/ HandlerFilterRolesTest.php - Tests that role filter dependencies are calculated correctly.
- UserRoleAdminTest::testRoleWeightOrdering in core/
modules/ user/ src/ Tests/ UserRoleAdminTest.php - Test user role weight change operation and ordering.
- UserViewsData::getViewsData in core/
modules/ user/ src/ UserViewsData.php - Returns views data for the entity type.
- views.view.test_views_handler_field_role.yml in core/
modules/ user/ tests/ modules/ user_test_views/ test_views/ views.view.test_views_handler_field_role.yml - core/modules/user/tests/modules/user_test_views/test_views/views.view.test_views_handler_field_role.yml
- views.view.user_admin_people.yml in core/
modules/ user/ config/ optional/ views.view.user_admin_people.yml - core/modules/user/config/optional/views.view.user_admin_people.yml
File
- core/
modules/ user/ user.module, line 1051 - Enables the user registration and login system.
Code
function user_roles($membersonly = FALSE, $permission = NULL) {
$roles = Role::loadMultiple();
if ($membersonly) {
unset($roles[RoleInterface::ANONYMOUS_ID]);
}
if (!empty($permission)) {
$roles = array_filter($roles, function ($role) use ($permission) {
return $role
->hasPermission($permission);
});
}
return $roles;
}