@@ -45,11 +45,27 @@ public function get_allocated_courses() {
45
45
}
46
46
$ course = get_course ($ this ->courseid );
47
47
48
- $ this ->evasyscourses = [];
49
-
50
48
if ($ course ->idnumber ) {
51
- $ this ->evasyscourses = [$ course ->idnumber ];
49
+ $ maincourse = $ course ->idnumber ;
50
+ }
51
+ // Fetch persistent object id.
52
+ $ pid = $ DB ->get_field ('block_evasys_sync_courses ' , 'id ' , array ('course ' => $ this ->courseid ));
53
+
54
+ // Get all associated courses.
55
+ if (!$ pid === false ) {
56
+ $ extras = new \block_evasys_sync \course_evasys_courses_allocation ($ pid );
57
+ $ extras = explode ('# ' , $ extras ->get ('evasyscourses ' ));
58
+ } else {
59
+ $ extras = [];
52
60
}
61
+ // If noone has associated the course itself, we force that.
62
+ if (isset ($ maincourse ) && !empty ($ maincourse )) {
63
+ if (!in_array ($ maincourse , $ extras )) {
64
+ $ extras [] = $ maincourse ;
65
+ }
66
+ }
67
+ $ extras = array_filter ($ extras );
68
+ $ this ->evasyscourses = $ extras ;
53
69
return $ this ->evasyscourses ;
54
70
}
55
71
@@ -110,7 +126,7 @@ public function get_course_name($coursekey) {
110
126
if (isset ($ this ->courseinformation [$ coursekey ])) {
111
127
return $ this ->courseinformation [$ coursekey ]->m_sCourseTitle ;
112
128
}
113
- return " Unknown " ;
129
+ return get_string ( ' no_evasys_course_found ' , ' block_evasys_sync ' ) ;
114
130
}
115
131
116
132
public function get_raw_course_name ($ courseid ): ?string {
0 commit comments