diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/menu.inc | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/includes/menu.inc b/includes/menu.inc index df54d7232..cefa47a27 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); |