diff --git modules/toolbar/toolbar.module modules/toolbar/toolbar.module index 28371ed..0bcac53 100644 --- modules/toolbar/toolbar.module +++ modules/toolbar/toolbar.module @@ -120,14 +120,12 @@ function toolbar_get_menu_tree() { $tree = array(); $admin_link = db_query("SELECT * FROM {menu_links} WHERE menu_name = 'management' AND module = 'system' AND link_path = 'admin'")->fetchAssoc(); if ($admin_link) { - $tree = menu_tree_all_data('management', $admin_link); + // @todo: use a function like book_menu_subtree_data(). + $tree = menu_tree_all_data('management', $admin_link, $admin_link['depth'] + 1); // The tree will be a sub-tree with the admin link as a single root item. + // @todo: this is wrong to assume it's the last. $admin_link = array_pop($tree); $tree = $admin_link['below'] ? $admin_link['below'] : array(); - foreach ($tree as $key => $item) { - // Get rid of subitems to have a leaner data structure. - unset($tree[$key]['below']); - } } return $tree; }