Bug FIx - courses in hhidden categories

Bug FIx - courses in hhidden categories

by Lukas Celinak -
Number of replies: 0
Picture of Plugin developers

Hi,

i have edited function

can_view_course_info($course, $user = null)

to make a patch, because when you had visible ocurses in hidden categories, there were visible in listings, i maked them invisible, but accssesible, i dont have a time for learning how to apply patch to moodle core, if you will be able for help and aply it.

/course/classes/category.php

 public static function can_view_course_info($course, $user = null) {
        global $DB;
        if ($course->id == SITEID) {
            return true;
        }
        if (!$course->visible) {
            $coursecontext = context_course::instance($course->id);
            if (!has_capability('moodle/course:viewhiddencourses', $coursecontext, $user)) {
                return false;
            }
        }
       if ($course->visible&&isset($course->category) && $DB->get_record('course_categories', array('id' => $course->category))->visible == 0) {
            $coursecontext = context_course::instance($course->id);
            if (!has_capability('moodle/course:viewhiddencourses', $coursecontext, $user)) {
                return false;
            }
        }
        $categorycontext = isset($course->category) ? context_coursecat::instance($course->category) :
            context_course::instance($course->id)->get_parent_context();
        return has_capability('moodle/category:viewcourselist', $categorycontext, $user);
    }

Average of ratings: -