function user_filter_form
user_filter_form()
Form builder; Return form for user administration filters.
See also
Related topics
File
- modules/user/user.admin.inc, line 49
- Admin page callback file for the user module.
Code
function user_filter_form() { $session = isset($_SESSION['user_overview_filter']) ? $_SESSION['user_overview_filter'] : array(); $filters = user_filters(); $i = 0; $form['filters'] = array( '#type' => 'fieldset', '#title' => t('Show only users where'), '#theme' => 'exposed_filters__user', ); foreach ($session as $filter) { list($type, $value) = $filter; if ($type == 'permission') { // Merge arrays of module permissions into one. // Slice past the first element '[any]' whose value is not an array. $options = call_user_func_array('array_merge', array_slice($filters[$type]['options'], 1)); $value = $options[$value]; } else { $value = $filters[$type]['options'][$value]; } $t_args = array('%property' => $filters[$type]['title'], '%value' => $value); if ($i++) { $form['filters']['current'][] = array('#markup' => t('and where %property is %value', $t_args)); } else { $form['filters']['current'][] = array('#markup' => t('%property is %value', $t_args)); } } $form['filters']['status'] = array( '#type' => 'container', '#attributes' => array('class' => array('clearfix')), '#prefix' => ($i ? '<div class="additional-filters">' . t('and where') . '</div>' : ''), ); $form['filters']['status']['filters'] = array( '#type' => 'container', '#attributes' => array('class' => array('filters')), ); foreach ($filters as $key => $filter) { $form['filters']['status']['filters'][$key] = array( '#type' => 'select', '#options' => $filter['options'], '#title' => $filter['title'], '#default_value' => '[any]', ); } $form['filters']['status']['actions'] = array( '#type' => 'actions', '#attributes' => array('class' => array('container-inline')), ); $form['filters']['status']['actions']['submit'] = array( '#type' => 'submit', '#value' => (count($session) ? t('Refine') : t('Filter')), ); if (count($session)) { $form['filters']['status']['actions']['undo'] = array( '#type' => 'submit', '#value' => t('Undo'), ); $form['filters']['status']['actions']['reset'] = array( '#type' => 'submit', '#value' => t('Reset'), ); } drupal_add_library('system', 'drupal.form'); return $form; }
© 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.admin.inc/function/user_filter_form/7.x