Index: modules/node/node.module =================================================================== RCS file: /cvs/drupal/drupal/modules/node/node.module,v retrieving revision 1.686 diff -u -d -F^\s*function -r1.686 node.module --- modules/node/node.module 25 Aug 2006 09:01:12 -0000 1.686 +++ modules/node/node.module 26 Aug 2006 10:10:09 -0000 @@ -742,14 +742,20 @@ function node_show($node, $cid) { * Implementation of hook_perm(). */ function node_perm() { - $perms = array('administer content types', 'administer nodes', 'access content', 'view revisions', 'revert revisions'); + $perms = array( + 'administer content types' => t('Add and remove simple content types and change the name of any content type.'), + 'administer nodes' => t('Edit and delete arbitrary posts.'), + 'access content' => t('View published posts.'), + 'view revisions' => t('View all revisions of a node.'), + 'revert revisions' => t('Roll posts back to an older revision.') + ); foreach (node_get_types() as $type) { if ($type->module == 'node') { $name = check_plain($type->name); - $perms[] = 'create '. $name .' content'; - $perms[] = 'edit own '. $name .' content'; - $perms[] = 'edit '. $name .' content'; + $perms['create '. $name .' content'] = t('Create posts with the content type %type.', array('%type' => t($name))); + $perms['edit own '. $name .' content'] = t('Edit posts with the content type %type the user has created.', array('%type' => t($name))); + $perms['edit '. $name .' content'] = t('Edit any post with the content type %type.', array('%type' => t($name))); } } Index: modules/user/user.css =================================================================== RCS file: /cvs/drupal/drupal/modules/user/user.css,v retrieving revision 1.2 diff -u -d -F^\s*function -r1.2 user.css --- modules/user/user.css 17 Aug 2006 19:19:15 -0000 1.2 +++ modules/user/user.css 26 Aug 2006 10:10:09 -0000 @@ -6,6 +6,9 @@ #permissions td.permission { padding-left: 1.5em; } +#permissions .description { + font-size: 0.85em; +} #access-rules .access-type, #access-rules .rule-type { margin-right: 1em; float: left; Index: modules/user/user.module =================================================================== RCS file: /cvs/drupal/drupal/modules/user/user.module,v retrieving revision 1.661 diff -u -d -F^\s*function -r1.661 user.module --- modules/user/user.module 25 Aug 2006 09:01:12 -0000 1.661 +++ modules/user/user.module 26 Aug 2006 10:10:19 -0000 @@ -402,7 +402,12 @@ function user_fields() { * Implementation of hook_perm(). */ function user_perm() { - return array('administer access control', 'administer users', 'access user profiles', 'change own username'); + return array( + 'administer access control' => t('Manage the permissions for roles.'), + 'administer users' => t('Delete, block or add users and manage their roles.'), + 'access user profiles' => t('View user profiles.'), + 'change own username' => t('The permission to change the own username.') + ); } /** @@ -1785,10 +1790,14 @@ function user_admin_perm($str_rids = NUL foreach (module_list(FALSE, FALSE, TRUE) as $module) { if ($permissions = module_invoke($module, 'perm')) { $form['permission'][] = array('#type' => 'markup', '#value' => t('@module module', array('@module' => $module))); - asort($permissions); - foreach ($permissions as $perm) { + ksort($permissions); + foreach ($permissions as $perm => $description) { + if (is_int($perm)) { + $perm = $description; + $description = NULL; + } $options[$perm] = ''; - $form['permission'][$perm] = array('#type' => 'markup', '#value' => t($perm)); + $form['permission'][$perm] = array('#type' => 'markup', '#value' => t($perm) . (!is_null($description) ? '
'. $description .'
' : '')); foreach ($role_names as $rid => $name) { // Builds arrays for checked boxes for each role if (strstr($role_permissions[$rid], $perm)) {