Commit 15954229 authored by webchick's avatar webchick

#551080 by Gábor Hojtsy: List non-container items (stuff in the toolbar) on...

#551080 by Gábor Hojtsy: List non-container items (stuff in the toolbar) on /admin for a complete overview.
parent 716293e0
......@@ -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'),
......
......@@ -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;
}
......
......@@ -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(
......
......@@ -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(
......
......@@ -318,11 +318,11 @@ ul.secondary li.active a.active {
#block-system-main ul.admin-list li {
position: relative;
padding-left: 30px;
padding-bottom: 9px;
border-bottom: 1px solid #ccc;
padding-top: 9px;
border-top: 1px solid #ccc;
margin-left: 0;
margin-bottom: 10px;
background: url(images/list-item.png) no-repeat 0 3px;
background: url(images/list-item.png) no-repeat 0 11px;
list-style-type: none;
list-style-image: none;
}
......@@ -639,9 +639,8 @@ div.admin-panel {
#block-system-main div.admin-panel h3 {
font-size: 12px;
text-transform: uppercase;
margin: 0 0 10px;
margin: 0;
padding-bottom: 9px;
border-bottom: 1px solid #ccc;
}
.container-inline fieldset {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment