diff --git a/course/renderer.php b/course/renderer.php index 7290aca64a73b..9c542fbc3a593 100644 --- a/course/renderer.php +++ b/course/renderer.php @@ -674,8 +674,15 @@ public function course_section_cm_name(cm_info $mod, $displayoptions = array()) $altname = get_accesshide(' '.$altname); } + // For items which are hidden but available to current user + // ($mod->uservisible), we show those as dimmed only if the user has + // viewhiddenactivities, so that teachers see 'items which might not + // be available to some students' dimmed but students do not see 'item + // which is actually available to current student' dimmed. $conditionalhidden = $this->is_cm_conditionally_hidden($mod); - $accessiblebutdim = !$mod->visible || $conditionalhidden; + $accessiblebutdim = (!$mod->visible || $conditionalhidden) && + (!$mod->uservisible || has_capability('moodle/course:viewhiddenactivities', + context_course::instance($mod->course))); $linkclasses = ''; $accesstext = '';