From a32e3d14088cede04a6ebf55c09ea111fec3efef Mon Sep 17 00:00:00 2001 From: Dries Buytaert <dries@buytaert.net> Date: Sun, 26 Jan 2003 13:27:59 +0000 Subject: [PATCH] - Added sitemap feature to administration pages. Requested by various people including Michael and Moshe. --- includes/menu.inc | 17 +++++++++++++++++ modules/admin.module | 12 +++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/includes/menu.inc b/includes/menu.inc index df54d7232941..cefa47a272ba 100644 --- a/includes/menu.inc +++ b/includes/menu.inc @@ -129,6 +129,23 @@ function menu_tree($parent = "", $all = 1) { return $output; } +function menu_map($parent = "") { + + $result = db_query("SELECT * FROM menu WHERE parent = '%s' ORDER BY weight, name", $parent); + + if (db_num_rows($result)) { + $output = "<ul>"; + while ($item = db_fetch_object($result)) { + $output .= "<li>". menu_item($item) ."</li>"; + $output .= menu_map($item->name); + } + $output .= "</ul>"; + } + + return $output; +} + + function menu_add($name, $link, $title = NULL, $help = NULL, $parent = NULL, $weight = 1) { if (!db_result(db_query("SELECT name FROM menu WHERE link = '%s'", $link))) { db_query("INSERT INTO menu (name, link, title, help, parent, weight) VALUES ('%s', '%s', '%s', '%s', '%s', '%d')", $name, $link, $title, $help, $parent, $weight); diff --git a/modules/admin.module b/modules/admin.module index 9a8d039b6eba..29d49a2c28a2 100644 --- a/modules/admin.module +++ b/modules/admin.module @@ -9,7 +9,17 @@ function status($message) { } } -function admin_page($mod) { +function admin_link($type) { + if ($type == "admin") { + menu_add("sitemap", url("admin/admin/sitemap"), "Sitemap", NULL, NULL, 8); + } +} + +function admin_admin() { + print menu_map(); +} + +function admin_page() { global $user; if (user_access("access administration pages")) { -- GitLab