diff --git a/role_delegation.module b/role_delegation.module index fdd26f0..a4b045b 100644 --- a/role_delegation.module +++ b/role_delegation.module @@ -295,35 +295,37 @@ function role_delegation_user_operations($form = array(), $form_state = array()) /** * Implements hook_form_FORM_ID_alter() for user_admin_account(). - * + * * In the user bulk update form, separates out the role delegation operations * and groups and relabels them under 'Add a role' and 'Remove a role' optgroups. */ function role_delegation_form_user_admin_account_alter(&$form, $form_state, $form_id) { - $options = $form['options']['operation']['#options']; - $roles = _role_delegation_roles(); - $add_roles = array(); - $remove_roles = array(); - foreach ($options as $option => $label) { - $operation_rid = explode('-', $option); - $operation = $operation_rid[0]; - if ($operation == 'role_delegation_add_role') { - $rid = $operation_rid[1]; - $add_roles[$option] = $roles[$rid]; - unset($options[$option]); + if (isset($form['options'])) { + $options = $form['options']['operation']['#options']; + $roles = _role_delegation_roles(); + $add_roles = array(); + $remove_roles = array(); + foreach ($options as $option => $label) { + $operation_rid = explode('-', $option); + $operation = $operation_rid[0]; + if ($operation == 'role_delegation_add_role') { + $rid = $operation_rid[1]; + $add_roles[$option] = $roles[$rid]; + unset($options[$option]); + } + elseif ($operation == 'role_delegation_remove_role') { + $rid = $operation_rid[1]; + $remove_roles[$option] = $roles[$rid]; + unset($options[$option]); + } } - elseif ($operation == 'role_delegation_remove_role') { - $rid = $operation_rid[1]; - $remove_roles[$option] = $roles[$rid]; - unset($options[$option]); + if (count($add_roles)) { + $form['options']['operation']['#options'] = $options + array( + t('Add a role to the selected users') => $add_roles, + t('Remove a role from the selected users') => $remove_roles, + ); } } - if (count($add_roles)) { - $form['options']['operation']['#options'] = $options + array( - t('Add a role to the selected users') => $add_roles, - t('Remove a role from the selected users') => $remove_roles, - ); - } }