From e39801cc034847bb1389c3cdf43ad072b2f0306f Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Tue, 1 Oct 2024 06:56:28 +0000 Subject: [PATCH] fix access to removed column start_time and dremove obsolete duration seminar counter, fixes #4656 Closes #4656 Merge request studip/studip!3467 --- app/views/admin/semester/index.php | 3 +-- lib/models/Semester.php | 17 +++++------------ 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/app/views/admin/semester/index.php b/app/views/admin/semester/index.php index 511dbfb89f0..cb654a47568 100644 --- a/app/views/admin/semester/index.php +++ b/app/views/admin/semester/index.php @@ -84,8 +84,7 @@ </td> <td> <?= $semester->absolute_seminars_count ?> - <?= sprintf(_('(+%u implizit)'), - $semester->continuous_seminars_count + $semester->duration_seminars_count) ?> + <?= sprintf(_('(+%u implizit)'), $semester->continuous_seminars_count) ?> </td> <td class="actions" nowrap> diff --git a/lib/models/Semester.php b/lib/models/Semester.php index ef3246b8c66..ca1eaa363ef 100644 --- a/lib/models/Semester.php +++ b/lib/models/Semester.php @@ -33,7 +33,6 @@ * @property-read mixed $past additional field * @property-read mixed $short_name additional field * @property mixed $absolute_seminars_count additional field - * @property mixed $duration_seminars_count additional field * @property mixed $continuous_seminars_count additional field */ class Semester extends SimpleORMap @@ -59,10 +58,6 @@ class Semester extends SimpleORMap 'get' => 'seminarCounter', 'set' => false, ]; - $config['additional_fields']['duration_seminars_count'] = [ - 'get' => 'seminarCounter', - 'set' => false, - ]; $config['additional_fields']['continuous_seminars_count'] = [ 'get' => 'seminarCounter', 'set' => false, @@ -320,17 +315,15 @@ class Semester extends SimpleORMap if ($this->seminar_counts === null) { $query = " SELECT SUM(IF(semester_courses.semester_id IS NULL, 1, 0)) AS continuous, - 0 AS duration, SUM(IF(semester_courses.semester_id IS NOT NULL, 1, 0)) AS absolute FROM seminare - LEFT JOIN semester_courses ON (seminare.Seminar_id = semester_courses.course_id) - WHERE start_time <= :beginn - AND (semester_courses.semester_id IS NULL OR semester_courses.semester_id = :semester_id) - "; + LEFT JOIN semester_courses ON (seminare.Seminar_id = semester_courses.course_id) + WHERE semester_courses.semester_id IS NULL + OR semester_courses.semester_id = :semester_id"; $statement = DBManager::get()->prepare($query); - $statement->bindValue(':beginn', $this['beginn']); - $statement->bindValue(':semester_id', $this['semester_id']); + $statement->bindValue(':semester_id', $this->id); $statement->execute(); + $this->seminar_counts = $statement->fetch(PDO::FETCH_ASSOC); } -- GitLab