From f99be79e25cf12fb4525bf445386323a15f6f692 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Wed, 3 Apr 2024 07:41:46 +0000 Subject: [PATCH] fixes #3926 Closes #3926 Merge request studip/studip!2782 --- app/controllers/admin/courses.php | 1 + resources/vue/components/AdminCourses.vue | 2 ++ 2 files changed, 3 insertions(+) diff --git a/app/controllers/admin/courses.php b/app/controllers/admin/courses.php index bee38d19b35..15efd2a3549 100644 --- a/app/controllers/admin/courses.php +++ b/app/controllers/admin/courses.php @@ -597,6 +597,7 @@ class Admin_CoursesController extends AuthenticatedController } if (in_array('semester', $activated_fields)) { $d['semester'] = $course->semester_text; + $d['semester_sort'] = $course->start_semester ? $course->start_semester->beginn : 0; } if (in_array('institute', $activated_fields)) { $d['institute'] = $course->home_institut ? $course->home_institut->name : $course->institute; diff --git a/resources/vue/components/AdminCourses.vue b/resources/vue/components/AdminCourses.vue index bba9cdf0e08..0300ae3189f 100644 --- a/resources/vue/components/AdminCourses.vue +++ b/resources/vue/components/AdminCourses.vue @@ -248,6 +248,8 @@ export default { return collator.compare(striptags(a.number), striptags(b.number)) || collator.compare(striptags(a.name), striptags(b.name)); }; + } else if (sortby === 'semester') { + sortFunction = (a, b) => a.semester_sort - b.semester_sort; } else { let is_numeric = true; for (let i in array) { -- GitLab