diff --git a/devel.admin.inc b/devel.admin.inc index 3c4dbdb..586d527 100644 --- a/devel.admin.inc +++ b/devel.admin.inc @@ -105,6 +105,11 @@ function devel_admin_settings() { '#default_value' => variable_get('devel_page_alter', FALSE), '#description' => t('Display $page array from hook_page_alter() in the messages area of each page.'), ); + $form['devel_perm_names'] = array('#type' => 'checkbox', + '#title' => t('Display machine names of permissions'), + '#default_value' => variable_get('devel_perm_names', FALSE), + '#description' => t('Display the language-independent machine names of the permissions in mouse-over hints on the !Permissions page; also display the module base file names.', array('!Permissions' => l(t('Permissions'), 'admin/people/permissions'))), + ); $error_handlers = devel_get_handlers(); $form['devel_error_handlers'] = array( diff --git a/devel.module b/devel.module index 5143fa6..8cc5691 100644 --- a/devel.module +++ b/devel.module @@ -1895,3 +1895,22 @@ function devel_rebuild_node_comment_statistics() { ->from($query) ->execute(); } + +/** + * Implements hook_form_alter(). + * + * Adds mouse-over hints on the Permissions page to display + * language-independent machine names. + */ +function devel_form_user_admin_permissions_alter(&$form, &$form_state) { + if (user_access('access devel information') && variable_get('devel_perm_names', FALSE)) { + foreach ($form['permission'] as $perm => $data) { + if (is_numeric($perm)) { + $form['permission'][$perm]['#markup'] = '' . $form['permission'][$perm]['#markup'] . ''; + } + else { + $form['permission'][$perm]['#markup'] = '' . $form['permission'][$perm]['#markup'] . ''; + } + } + } +}