aboutsummaryrefslogtreecommitdiff
path: root/engine/lib/views.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/lib/views.php')
-rw-r--r--engine/lib/views.php25
1 files changed, 14 insertions, 11 deletions
diff --git a/engine/lib/views.php b/engine/lib/views.php
index 1e309f5bd..b5240b431 100644
--- a/engine/lib/views.php
+++ b/engine/lib/views.php
@@ -657,27 +657,30 @@ function elgg_view_layout($layout_name, $vars = array()) {
* @since 1.8.0
*/
function elgg_view_menu($menu_name, array $vars = array()) {
-
+ global $CONFIG;
+
$vars['name'] = $menu_name;
$sort_by = elgg_get_array_value('sort_by', $vars, 'title');
- // Give plugins a chance to add menu items just before creation.
- // This supports context sensitive menus (ex. user hover).
- elgg_trigger_plugin_hook('register', "menu:$menu_name", $vars, NULL);
+ $menu = $CONFIG->menus[$menu_name];
+
+ // Give plugins a chance to add menu items just before creation.
+ // This supports context sensitive menus (ex. user_hover).
+ $menu = elgg_trigger_plugin_hook('register', "menu:$menu_name", $vars, $menu);
- $builder = new ElggMenuBuilder($menu_name);
+ $builder = new ElggMenuBuilder($menu);
$vars['menu'] = $builder->getMenu($sort_by);
$vars['selected_item'] = $builder->getSelected();
// Let plugins modify the menu
- $vars['menu'] = elgg_trigger_plugin_hook('prepare', "menu:$menu_name", $vars, $vars['menu']);
+ $vars['menu'] = elgg_trigger_plugin_hook('prepare', "menu:$menu_name", $vars, $vars['menu']);
- if (elgg_view_exists("navigation/menu/$menu_name")) {
- return elgg_view("navigation/menu/$menu_name", $vars);
- } else {
- return elgg_view("navigation/menu/default", $vars);
- }
+ if (elgg_view_exists("navigation/menu/$menu_name")) {
+ return elgg_view("navigation/menu/$menu_name", $vars);
+ } else {
+ return elgg_view("navigation/menu/default", $vars);
+ }
}
/**