Merge branch '48070-29' of git://github.com/samhemelryk/moodle

This commit is contained in:
Dan Poltawski 2014-11-17 16:22:26 +00:00
commit b4dd8e28cd
2 changed files with 14 additions and 9 deletions

View File

@ -3088,12 +3088,14 @@ class navbar extends navigation_node {
} else if ($this->hasitems !== false) {
return true;
}
if (count($this->children) > 0 || count($this->prependchildren) > 0) {
// There have been manually added items - there are definitely items.
$outcome = true;
} else if (!$this->ignoreactive) {
// We will need to initialise the navigation structure to check if there are active items.
$this->page->navigation->initialise($this->page);
$activenodefound = ($this->page->navigation->contains_active_node() ||
$this->page->settingsnav->contains_active_node());
$outcome = (count($this->children) > 0 || count($this->prependchildren) || (!$this->ignoreactive && $activenodefound));
$outcome = ($this->page->navigation->contains_active_node() || $this->page->settingsnav->contains_active_node());
}
$this->hasitems = $outcome;
return $outcome;
}
@ -3148,11 +3150,10 @@ class navbar extends navigation_node {
$items = array_reverse($this->children);
}
$navigationactivenode = $this->page->navigation->find_active_node();
$settingsactivenode = $this->page->settingsnav->find_active_node();
// Check if navigation contains the active node
if (!$this->ignoreactive) {
$navigationactivenode = $this->page->navigation->find_active_node();
$settingsactivenode = $this->page->settingsnav->find_active_node();
if ($navigationactivenode && $settingsactivenode) {
// Parse a combined navigation tree

View File

@ -93,6 +93,10 @@ foreach($authsequence as $authname) {
/// Define variables used in page
$site = get_site();
// Ignore any active pages in the navigation/settings.
// We do this because there won't be an active page there, and by ignoring the active pages the
// navigation and settings won't be initialised unless something else needs them.
$PAGE->navbar->ignore_active();
$loginsite = get_string("loginsite");
$PAGE->navbar->add($loginsite);