diff options
Diffstat (limited to 'engine')
-rw-r--r-- | engine/lib/navigation.php | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/engine/lib/navigation.php b/engine/lib/navigation.php index 8845d5164..a9d28e22e 100644 --- a/engine/lib/navigation.php +++ b/engine/lib/navigation.php @@ -321,21 +321,12 @@ function elgg_site_menu_setup($hook, $type, $return, $params) { } if (!$selected) { - // nothing selected, match by handler - $handler = get_input('handler'); - + // nothing selected, match name to context foreach ($return as $section_name => $section) { foreach ($section as $key => $item) { - // determine the 'handler' of this url, if there is one + // only highlight internal links if (strpos($item->getHref(), elgg_get_site_url()) === 0) { - // this is an internal link, so it has a page handler - $path = array(str_replace(elgg_get_site_url(), '', $item->getHref())); - $separators = array('/', '?', '#'); - foreach ($separators as $separator) { - $path = explode($separator, $path[0]); - } - - if ($path[0] == $handler) { + if ($item->getName() == elgg_get_context()) { $return[$section_name][$key]->setSelected(true); break 2; } |