Same name and namespace in other branches
  1. 5.x modules/system/system.module \system_admin_menu_block()
  2. 7.x modules/system/system.module \system_admin_menu_block()

Provide a single block on the administration overview page.

Parameters

$item: The menu item to be displayed.

4 calls to system_admin_menu_block()
node_add_page in modules/node/node.pages.inc
Page callback: Displays add content links for available content types.
system_logging_overview in modules/system/system.admin.inc
Menu callback; Menu page for the various logging options.
system_main_admin_page in modules/system/system.admin.inc
Menu callback; Provide the administration overview page.
system_settings_overview in modules/system/system.admin.inc
Menu callback: Displays the configuration overview page.

File

modules/system/system.module, line 623
Configuration system that lets administrators modify the workings of the site.

Code

function system_admin_menu_block($item) {
  $content = array();
  if (!isset($item['mlid'])) {
    $item += db_fetch_array(db_query("SELECT mlid, menu_name FROM {menu_links} ml WHERE ml.router_path = '%s' AND module = 'system'", $item['path']));
  }
  $result = db_query("\n    SELECT m.load_functions, m.to_arg_functions, m.access_callback, m.access_arguments, m.page_callback, m.page_arguments, m.title, m.title_callback, m.title_arguments, m.type, m.description, ml.*\n    FROM {menu_links} ml\n    LEFT JOIN {menu_router} m ON ml.router_path = m.path\n    WHERE ml.plid = %d AND ml.menu_name = '%s' AND hidden = 0", $item['mlid'], $item['menu_name']);
  while ($item = db_fetch_array($result)) {
    _menu_link_translate($item);
    if (!$item['access']) {
      continue;
    }

    // The link 'description' either derived from the hook_menu 'description' or
    // entered by the user via menu module is saved as the title attribute.
    if (!empty($item['localized_options']['attributes']['title'])) {
      $item['description'] = $item['localized_options']['attributes']['title'];
    }

    // Prepare for sorting as in function _menu_tree_check_access().
    // The weight is offset so it is always positive, with a uniform 5-digits.
    $content[50000 + $item['weight'] . ' ' . drupal_strtolower($item['title']) . ' ' . $item['mlid']] = $item;
  }
  ksort($content);
  return $content;
}