From 2225d0cfe6de61afe371c3197feb7e51d02095a2 Mon Sep 17 00:00:00 2001 From: Rajesh Taneja Date: Wed, 20 Feb 2013 11:12:11 +0800 Subject: [PATCH] MDL-37329 Navigation: Enrolled courses in category should be added only. --- lib/navigationlib.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/navigationlib.php b/lib/navigationlib.php index bfde117e492..0483f24c5c3 100644 --- a/lib/navigationlib.php +++ b/lib/navigationlib.php @@ -2826,9 +2826,11 @@ class global_navigation_for_ajax extends global_navigation { ORDER BY cc.depth ASC, cc.sortorder ASC, cc.id ASC"; $params = array('categoryid1' => $categoryid, 'categoryid2' => $categoryid); $categories = $DB->get_recordset_sql($sql, $params, 0, $limit); + $categorylist = array(); $subcategories = array(); $basecategory = null; foreach ($categories as $category) { + $categorylist[] = $category->id; context_helper::preload_from_record($category); if ($category->id == $categoryid) { $this->add_category($category, $this, $nodetype); @@ -2849,7 +2851,10 @@ class global_navigation_for_ajax extends global_navigation { if ($nodetype === self::TYPE_MY_CATEGORY) { $courses = enrol_get_my_courses(); foreach ($courses as $course) { - $this->add_course($course, true, self::COURSE_MY); + // Add course if it's in category. + if (in_array($course->category, $categorylist)) { + $this->add_course($course, true, self::COURSE_MY); + } } } else { $courses = $DB->get_recordset('course', array('category' => $categoryid), 'sortorder', '*' , 0, $limit);