You are here

function user_filters in Drupal 7

Same name and namespace in other branches
  1. 5 modules/user/user.module \user_filters()
  2. 6 modules/user/user.module \user_filters()

List user administration filters that can be applied.

3 calls to user_filters()
user_build_filter_query in modules/user/user.module
Extends a query object for user administration filters based on session.
user_filter_form in modules/user/user.admin.inc
Form builder; Return form for user administration filters.
user_filter_form_submit in modules/user/user.admin.inc
Process result from user administration filter form.

File

modules/user/user.module, line 3477
Enables the user registration and login system.

Code

function user_filters() {

  // Regular filters
  $filters = array();
  $roles = user_roles(TRUE);
  unset($roles[DRUPAL_AUTHENTICATED_RID]);

  // Don't list authorized role.
  if (count($roles)) {
    $filters['role'] = array(
      'title' => t('role'),
      'field' => 'ur.rid',
      'options' => array(
        '[any]' => t('any'),
      ) + $roles,
    );
  }
  $options = array();
  foreach (module_implements('permission') as $module) {
    $function = $module . '_permission';
    if ($permissions = $function()) {
      asort($permissions);
      foreach ($permissions as $permission => $description) {
        $options[t('@module module', array(
          '@module' => $module,
        ))][$permission] = t($permission);
      }
    }
  }
  ksort($options);
  $filters['permission'] = array(
    'title' => t('permission'),
    'options' => array(
      '[any]' => t('any'),
    ) + $options,
  );
  $filters['status'] = array(
    'title' => t('status'),
    'field' => 'u.status',
    'options' => array(
      '[any]' => t('any'),
      1 => t('active'),
      0 => t('blocked'),
    ),
  );
  return $filters;
}