From 111938abd98bc5a04436437d9c1d8d5f6f1ecb11 Mon Sep 17 00:00:00 2001 From: "Eloy Lafuente (stronk7)" Date: Tue, 28 Aug 2012 20:37:46 +0200 Subject: [PATCH 1/1] MDL-34250 navigation: Always look for correct parent context. --- lib/navigationlib.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/navigationlib.php b/lib/navigationlib.php index 43dfe9eefb4..d3c0664532c 100644 --- a/lib/navigationlib.php +++ b/lib/navigationlib.php @@ -1131,7 +1131,13 @@ class global_navigation extends navigation_node { $addedcategories[$category->id] = $categoryparent->add($category->name, $url, self::TYPE_CATEGORY, $category->name, $category->id); if (!$category->visible) { - if (!has_capability('moodle/category:viewhiddencategories', context_coursecat::instance($category->parent))) { + // Let's decide the context where viewhidden cap checks will happen. + if ($category->parent == '0') { + $contexttocheck = context_system::instance(); + } else { + $contexttocheck = context_coursecat::instance($category->parent); + } + if (!has_capability('moodle/category:viewhiddencategories', $contexttocheck)) { $addedcategories[$category->id]->display = false; } else { $addedcategories[$category->id]->hidden = true; -- 2.43.0