summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAngie Byron <webchick@24967.no-reply.drupal.org>2009-08-21 07:59:47 +0000
committerAngie Byron <webchick@24967.no-reply.drupal.org>2009-08-21 07:59:47 +0000
commit1595422929508774df50baa6065ceb27cd3f6bd1 (patch)
tree3d5d9d746cb210d3a5bc982f86fc717fef28fe7d /modules
parent716293e0fbf1155b8e78c4bd2762c98275b8e6cb (diff)
downloadbrdo-1595422929508774df50baa6065ceb27cd3f6bd1.tar.gz
brdo-1595422929508774df50baa6065ceb27cd3f6bd1.tar.bz2
#551080 by Gábor Hojtsy: List non-container items (stuff in the toolbar) on /admin for a complete overview.
Diffstat (limited to 'modules')
-rw-r--r--modules/node/node.module1
-rw-r--r--modules/system/system.admin.inc49
-rw-r--r--modules/system/system.module2
-rw-r--r--modules/user/user.module2
4 files changed, 44 insertions, 10 deletions
diff --git a/modules/node/node.module b/modules/node/node.module
index 1320a9d05..18711dbdd 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -1691,6 +1691,7 @@ function _node_add_access() {
function node_menu() {
$items['admin/content'] = array(
'title' => 'Content',
+ 'description' => 'Find and manage content and comments.',
'page callback' => 'drupal_get_form',
'page arguments' => array('node_admin_content'),
'access arguments' => array('administer nodes'),
diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc
index 6a0e302db..ca5ce10ac 100644
--- a/modules/system/system.admin.inc
+++ b/modules/system/system.admin.inc
@@ -40,11 +40,25 @@ function system_main_admin_page($arg = NULL) {
}
$block = $item;
$block['content'] = '';
+ $block['show'] = FALSE;
if ($item['block_callback'] && function_exists($item['block_callback'])) {
$function = $item['block_callback'];
$block['content'] .= $function();
}
- $block['content'] .= theme('admin_block_content', system_admin_menu_block($item));
+ $content = system_admin_menu_block($item);
+ if ((isset($item['page_callback']) && !in_array($item['page_callback'], array('system_admin_menu_block_page', 'system_admin_config_page', 'system_settings_overview'))) || count($content)) {
+ // Only show blocks for items which are not containers, or those which
+ // are containers and do have items we can show.
+ $block['show'] = TRUE;
+ if (empty($content)) {
+ // If no items found below, but access checks did not fail, show.
+ $block['title'] = l($item['title'], $item['href'], $item['localized_options']);
+ }
+ else {
+ // Theme items below.
+ $block['content'] .= theme('admin_block_content', $content);
+ }
+ }
// Prepare for sorting as in function _menu_tree_check_access().
// The weight is offset so it is always positive, with a uniform 5-digits.
$blocks[(50000 + $item['weight']) . ' ' . $item['title'] . ' ' . $item['mlid']] = $block;
@@ -86,6 +100,7 @@ function system_admin_config_page() {
}
$block = $item;
$block['content'] = '';
+ $block['show'] = TRUE;
if ($item['block_callback'] && function_exists($item['block_callback'])) {
$function = $item['block_callback'];
$block['content'] .= $function();
@@ -1923,20 +1938,34 @@ function system_batch_page() {
*/
function theme_admin_block($block) {
// Don't display the block if it has no content to display.
- if (empty($block['content'])) {
+ if (!$block['show']) {
return '';
}
- $output = <<< EOT
- <div class="admin-panel">
- <h3>
- $block[title]
- </h3>
- <div class="body">
- $block[content]
+ if (empty($block['content'])) {
+ $output = <<< EOT
+ <div class="admin-panel">
+ <h3>
+ $block[title]
+ </h3>
+ <div class="description">
+ $block[description]
+ </div>
+ </div>
+EOT;
+ }
+ else {
+ $output = <<< EOT
+ <div class="admin-panel">
+ <h3>
+ $block[title]
+ </h3>
+ <div class="body">
+ $block[content]
+ </div>
</div>
- </div>
EOT;
+ }
return $output;
}
diff --git a/modules/system/system.module b/modules/system/system.module
index a98438365..87cdc738d 100644
--- a/modules/system/system.module
+++ b/modules/system/system.module
@@ -545,9 +545,11 @@ function system_menu() {
// Appearance.
$items['admin/appearance'] = array(
'title' => 'Appearance',
+ 'description' => 'Select and configure your site theme.',
'page callback' => 'drupal_get_form',
'page arguments' => array('system_themes_form'),
'access arguments' => array('administer site configuration'),
+ 'position' => 'left',
'weight' => -6,
);
$items['admin/appearance/select'] = array(
diff --git a/modules/user/user.module b/modules/user/user.module
index 2bc1dfb1d..a7fb466c5 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -1348,9 +1348,11 @@ function user_menu() {
// User administration pages.
$items['admin/people'] = array(
'title' => 'People',
+ 'description' => 'Find and manage people interacting with your site.',
'page callback' => 'user_admin',
'page arguments' => array('list'),
'access arguments' => array('administer users'),
+ 'position' => 'left',
'weight' => -4,
);
$items['admin/people/list'] = array(