Index: sites/all/modules/filter_perms/filter_perms.module IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- sites/all/modules/filter_perms/filter_perms.module (revision 5976f939de78d6a851d340a9906c4c36616c4da8) +++ sites/all/modules/filter_perms/filter_perms.module (revision ) @@ -87,14 +87,18 @@ foreach ($perms as $perm_key => $perm) { foreach ($perms[$perm_key] as $perm_name => $perm_value) { + foreach ($new_roles as $rid => $role) { + if ((in_array($perm_name,$old_checkboxes[$rid]['#default_value']) && isset($_SESSION['filter_perm_enabled']) && ($_SESSION['filter_perm_enabled'] ==1 )) + || (isset($_SESSION['filter_perm_enabled']) && ($_SESSION['filter_perm_enabled'] ==0)) ) { + #ToDo find a cleaner solution because $form['permission'] redundant setup - $form['permission'][$perm_index] = $old_perms[$perm_value]; - $form['permission'][$perm_name] = $old_perms[$perm_name]; + $form['permission'][$perm_index] = $old_perms[$perm_value]; + $form['permission'][$perm_name] = $old_perms[$perm_name]; - foreach ($new_roles as $rid => $role) { $form['checkboxes'][$rid]['#type'] = 'checkboxes'; $form['checkboxes'][$rid]['#options'][$perm_name] = ''; $form['checkboxes'][$rid]['#default_value'] = $old_checkboxes[$rid]['#default_value']; - } - } + } + } + } $perm_index++; } $form['role_names'] = $new_roles; @@ -168,6 +172,11 @@ '#collapsible' => TRUE, '#collapsed' => FALSE, ); + $form['filters']['enabled']=array( + '#type' => 'checkbox', + '#title' => t('Enabled only permissions'), + '#default_value' => isset($_SESSION['filter_perm_enabled']) ? $_SESSION['filter_perm_enabled'] : '', + ); $role_options = user_roles(); // Displays all user roles. $form['filters']['roles'] = array( @@ -205,4 +214,5 @@ function filter_perms_admin_perm_filter_submit($form, &$form_state) { $_SESSION['filter_perm_roles'] = $form_state['values']['roles']; $_SESSION['filter_perm_modules'] = $form_state['values']['modules']; + $_SESSION['filter_perm_enabled'] = $form_state['values']['enabled']; }