X-Git-Url: http://git.moodle.org/gw?p=moodle.git;a=blobdiff_plain;f=lib%2Fnavigationlib.php;h=d3c0664532cc6ff0dbdd242839b5b80b9740b8bb;hp=43dfe9eefb4036404f75c2b8172536214f7229a0;hb=111938abd98bc5a04436437d9c1d8d5f6f1ecb11;hpb=d71c486507668ac542a6a48cfd01ebad71217e94 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;