You are here

function admin_page_fieldsets_form_user_admin_permissions_alter in Util 7

Implements hook_form_FORM_ID_alter() for user_admin_permissions().

File

contribs/admin_page_fieldsets/admin_page_fieldsets.module, line 186
Util contrib to collapse admin field sets.

Code

function admin_page_fieldsets_form_user_admin_permissions_alter(&$form, $form_state) {
  drupal_add_css(drupal_get_path('module', 'admin_page_fieldsets') . '/admin_page_fieldsets.css');
  $modules = array();
  $module_info = system_get_info('module');
  foreach (module_implements('permission') as $module) {
    $modules[$module] = $module_info[$module]['name'];
  }
  asort($modules);
  $form['admin_page_fieldsets_list'] = array(
    '#type' => 'fieldset',
    '#title' => t('Module display'),
    '#collapsible' => TRUE,
    '#collapsed' => TRUE,
    '#weight' => -9999,
  );
  $defaults = variable_get('admin_page_fieldsets_modules', array());
  $form['admin_page_fieldsets_list']['admin_page_fieldsets_modules'] = array(
    '#type' => 'checkboxes',
    '#description' => t('Permissions of checked modules will be displayed in an open (non-collapsed) fieldset.'),
    '#default_value' => $defaults,
    '#options' => $modules,
  );
  foreach ($modules as $id => $module) {
    $form[$id] = array(
      '#type' => 'fieldset',
      '#title' => $module,
      '#collapsible' => TRUE,
      '#collapsed' => isset($defaults[$id]) ? $defaults[$id] === 0 : FALSE,
    );
  }
  $form['#submit'][] = 'admin_page_fieldsets_user_admin_permissions_submit';
}