user_roles
function user_roles
user_roles($membersonly = FALSE, $permission = NULL)
Retrieve an array of roles matching specified conditions.
Parameters
$membersonly: Set this to TRUE to exclude the 'anonymous' role.
$permission: A string containing a permission. If set, only roles containing that permission are returned.
Return value
An associative array with the role id as the key and the role name as value.
File
- modules/user/user.module, line 2927
- Enables the user registration and login system.
Code
function user_roles($membersonly = FALSE, $permission = NULL) { $query = db_select('role', 'r'); $query->addTag('translatable'); $query->fields('r', array('rid', 'name')); $query->orderBy('weight'); $query->orderBy('name'); if (!empty($permission)) { $query->innerJoin('role_permission', 'p', 'r.rid = p.rid'); $query->condition('p.permission', $permission); } $result = $query->execute(); $roles = array(); foreach ($result as $role) { switch ($role->rid) { // We only translate the built in role names case DRUPAL_ANONYMOUS_RID: if (!$membersonly) { $roles[$role->rid] = t($role->name); } break; case DRUPAL_AUTHENTICATED_RID: $roles[$role->rid] = t($role->name); break; default: $roles[$role->rid] = $role->name; } } return $roles; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!user!user.module/function/user_roles/7.x