diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/menu.inc | 9 | ||||
-rw-r--r-- | includes/module.inc | 6 |
2 files changed, 14 insertions, 1 deletions
diff --git a/includes/menu.inc b/includes/menu.inc index 13cad943e..58422702e 100644 --- a/includes/menu.inc +++ b/includes/menu.inc @@ -163,4 +163,13 @@ function menu_execute_action() { } } +function menu_build($type) { + + // Empty the existing menu tree (if any): + unset($GLOBALS["_gmenu"]); + + // Build the menu tree: + module_invoke_all("link", $type); +} + ?> diff --git a/includes/module.inc b/includes/module.inc index a3a1be482..a8214e49c 100644 --- a/includes/module.inc +++ b/includes/module.inc @@ -41,9 +41,13 @@ function module_invoke_all($hook, $a1 = NULL, $a2 = NULL, $a3 = NULL, $a4 = NULL } // return array of module names (includes lazy module loading): -function module_list() { +function module_list($refresh = 0) { static $list; + if ($refresh) { + unset($list); + } + if (!$list) { $list = array("system" => "system", "user" => "user", "watchdog" => "watchdog"); $result = db_query("SELECT name, filename FROM system WHERE type = 'module' AND status = '1' ORDER BY name"); |