aboutsummaryrefslogtreecommitdiff
path: root/engine/lib/navigation.php
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2013-02-16 11:48:34 -0200
committerSilvio Rhatto <rhatto@riseup.net>2013-02-16 11:48:34 -0200
commitb6ee1b93376d42f8a8fcee0127bc10f84d1e018e (patch)
treecbde5e4d0b745c3bb854c215bccea8b2d6bb367e /engine/lib/navigation.php
parent694306cf537fb8cb45beb7d4fd63c5b56cb5c4da (diff)
parent5aff5b3913fbb6226d8fb3162453c58888fba38d (diff)
downloadelgg-b6ee1b93376d42f8a8fcee0127bc10f84d1e018e.tar.gz
elgg-b6ee1b93376d42f8a8fcee0127bc10f84d1e018e.tar.bz2
Merge branch 'master' into saravea
Diffstat (limited to 'engine/lib/navigation.php')
-rw-r--r--engine/lib/navigation.php26
1 files changed, 26 insertions, 0 deletions
diff --git a/engine/lib/navigation.php b/engine/lib/navigation.php
index 8c3952594..86624cd7c 100644
--- a/engine/lib/navigation.php
+++ b/engine/lib/navigation.php
@@ -308,6 +308,32 @@ function elgg_site_menu_setup($hook, $type, $return, $params) {
$return['more'] = array_splice($return['default'], $max_display_items);
}
}
+
+ // check if we have anything selected
+ $selected = false;
+ foreach ($return as $section_name => $section) {
+ foreach ($section as $key => $item) {
+ if ($item->getSelected()) {
+ $selected = true;
+ break 2;
+ }
+ }
+ }
+
+ if (!$selected) {
+ // nothing selected, match name to context
+ foreach ($return as $section_name => $section) {
+ foreach ($section as $key => $item) {
+ // only highlight internal links
+ if (strpos($item->getHref(), elgg_get_site_url()) === 0) {
+ if ($item->getName() == elgg_get_context()) {
+ $return[$section_name][$key]->setSelected(true);
+ break 2;
+ }
+ }
+ }
+ }
+ }
return $return;
}