diff options
| author | Thomas Hackl <hackl@data-quest.de> | 2025-03-18 13:02:30 +0000 |
|---|---|---|
| committer | Thomas Hackl <hackl@data-quest.de> | 2025-03-18 13:02:30 +0000 |
| commit | ca3286025e776c803d863927fdee026340f42ae4 (patch) | |
| tree | ea341f3cce9276b36ffe003b7f90a74c176c0c8f /lib/classes/StudipTreeNodeCourseTrait.php | |
| parent | 51bd332813aafa3ebeb37db69950e5a3ab657cc8 (diff) | |
Resolve "Vorlesungsverzeichnis: Der Filter nach einer Veranstaltungskategorie liefert keine Ergebnisse"
Closes #5243
Merge request studip/studip!4052
Diffstat (limited to 'lib/classes/StudipTreeNodeCourseTrait.php')
| -rw-r--r-- | lib/classes/StudipTreeNodeCourseTrait.php | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/lib/classes/StudipTreeNodeCourseTrait.php b/lib/classes/StudipTreeNodeCourseTrait.php index 23ea992..0d3b360 100644 --- a/lib/classes/StudipTreeNodeCourseTrait.php +++ b/lib/classes/StudipTreeNodeCourseTrait.php @@ -17,7 +17,7 @@ trait StudipTreeNodeCourseTrait $condition .= " LEFT JOIN `semester_courses` sc ON ({$alias}.`seminar_id` = sc.`course_id`) LEFT JOIN `semester_data` sd USING (`semester_id`) WHERE (sc.`semester_id` = :semester OR sc.`semester_id` IS NULL)"; - $parameters[':semester'] = $semester_id; + $parameters['semester'] = $semester_id; $order_by[] = 'sd.`beginn`'; } else { $condition .= " WHERE 1"; @@ -27,19 +27,10 @@ trait StudipTreeNodeCourseTrait $condition .= " AND s.`visible` = 1"; } - if ($sem_class) { + if ($sem_class !== 0) { $condition .= " AND s.`status` IN (:types)"; - $parameters['types'] = array_map( - function ($type) { - return $type['id']; - }, - array_filter( - SemType::getTypes(), - function ($t) use ($sem_class) { - return $t['class'] === $sem_class; - } - ) - ); + $semclass = new SemClass($sem_class); + $parameters['types'] = array_keys($semclass->getSemTypes()); } if ($searchterm) { |
