Skip to content

Commit

Permalink
MDL-71092 navigation: Update secondary nav to show category context.
Browse files Browse the repository at this point in the history
  • Loading branch information
abgreeve committed Sep 1, 2021
1 parent 206023c commit 67be339
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 1 deletion.
1 change: 1 addition & 0 deletions lang/en/moodle.php
Expand Up @@ -239,6 +239,7 @@
$string['categorycurrentcontents'] = 'Contents of {$a}';
$string['categorydeleted'] = 'The category \'{$a}\' was deleted';
$string['categoryduplicate'] = 'A category named \'{$a}\' already exists!';
$string['categoryheader'] = 'Category menu';
$string['categoryhidden'] = '(hidden)';
$string['categorymodifiedcancel'] = 'Category was modified! Please cancel and try again.';
$string['categoryname'] = 'Category name';
Expand Down
17 changes: 17 additions & 0 deletions lib/classes/navigation/views/secondary.php
Expand Up @@ -166,6 +166,10 @@ public function initialise(): void {
$this->load_module_navigation();
$defaultmoremenunodes = $this->get_default_module_more_menu_nodes();
break;
case CONTEXT_COURSECAT:
$this->headertitle = get_string('categoryheader');
$this->load_category_navigation();
break;
case CONTEXT_SYSTEM:
$this->headertitle = get_string('homeheader');
$this->load_admin_navigation();
Expand Down Expand Up @@ -244,6 +248,19 @@ protected function load_module_navigation(): void {
}
}

/**
* Load the course category navigation.
*/
protected function load_category_navigation(): void {
$settingsnav = $this->page->settingsnav;
$mainnode = $settingsnav->find('categorysettings', self::TYPE_CONTAINER);
if ($mainnode) {
$url = new \moodle_url('/course/index.php', ['categoryid' => $this->context->instanceid]);
$this->add($this->context->get_context_name(), $url, self::TYPE_CONTAINER, null, 'categorymain');
$this->load_remaining_nodes($mainnode, []);
}
}

/**
* Load the site admin navigation
*/
Expand Down
2 changes: 1 addition & 1 deletion lib/navigationlib.php
Expand Up @@ -5326,7 +5326,7 @@ protected function load_category_settings() {
if (can_edit_in_category($catcontext->instanceid)) {
$url = new moodle_url('/course/management.php', array('categoryid' => $catcontext->instanceid));
$editstring = get_string('managecategorythis');
$categorynode->add($editstring, $url, self::TYPE_SETTING, null, null, new pix_icon('i/edit', ''));
$categorynode->add($editstring, $url, self::TYPE_SETTING, null, 'managecategory', new pix_icon('i/edit', ''));
}

if (has_capability('moodle/category:manage', $catcontext)) {
Expand Down

0 comments on commit 67be339

Please sign in to comment.