MDL-31466 Tags Adding a capability check to make sure hidden courses are not displaye...
authorAnkit Agarwal <ankit@moodle.com>
Thu, 23 Feb 2012 05:57:05 +0000 (11:27 +0530)
committerAnkit Agarwal <ankit@moodle.com>
Tue, 28 Feb 2012 06:03:32 +0000 (14:03 +0800)
tag/coursetagslib.php

index c83b954..ca352cc 100644 (file)
@@ -444,15 +444,11 @@ function coursetag_get_tagged_courses($tagid) {
     $courses = array();
     if ($crs = $DB->get_records_select('tag_instance', "tagid=:tagid AND itemtype='course'", array('tagid'=>$tagid))) {
         foreach ($crs as $c) {
-            //this capability check was introduced to stop display of courses that a student could not
-            //view, but arguably it is best that when clicking on a tag, the tagged course summary should
-            //be seen and then if the student clicks on that they will be given the opportunity to join
-            //note courses not visible should not have their tagid sent to this function
-            // $context = get_context_instance(CONTEXT_COURSE, $c->itemid);
-            //if (is_enrolled($context) oe is_viewing($context)) {
-                $course = $DB->get_record('course', array('id'=>$c->itemid));
+            $course = $DB->get_record('course', array('id'=>$c->itemid));
+            // check if the course is hidden
+            if ($course->visible == 1 || has_capability('moodle/course:viewhiddencourses', context_course::instance($course->id))) {
                 $courses[$c->itemid] = $course;
-            //}
+            }
         }
     }
     return $courses;