From 7ff14f9d59d098147bb78ee0de8e385fe2fdc208 Mon Sep 17 00:00:00 2001 From: Elmar Ludwig Date: Fri, 24 Jan 2025 14:15:27 +0000 Subject: return correct array of rooms, fixes #5152 Closes #5152 Merge request studip/studip!3872 --- lib/models/SeminarCycleDate.php | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/lib/models/SeminarCycleDate.php b/lib/models/SeminarCycleDate.php index 74b0c78..2a6857f 100644 --- a/lib/models/SeminarCycleDate.php +++ b/lib/models/SeminarCycleDate.php @@ -359,17 +359,11 @@ class SeminarCycleDate extends SimpleORMap AND `resource_id` <> '' GROUP BY `resource_id` ORDER BY resource_c DESC"; - $db = DBManager::get(); - $stmt = $db->prepare($sql); - $stmt->execute($sql_params); - $rooms = []; - while ($room_id = $stmt->fetchColumn() !== false) { - $room = Resource::find($room_id)?->getDerivedClassInstance(); - if ($room instanceof Room) { - $rooms[] = $room; - } - } - return $rooms; + return DBManager::get()->fetchFirst( + $sql, + $sql_params, + fn($room_id) => Room::find($room_id) + ); } /** @@ -407,14 +401,7 @@ class SeminarCycleDate extends SimpleORMap AND `termine`.`termin_id` NOT IN (SELECT `range_id` FROM `resource_bookings`) GROUP BY `raum` ORDER BY room_name_c DESC"; - $db = DBManager::get(); - $stmt = $db->prepare($sql); - $stmt->execute($sql_params); - $rooms = []; - while ($room_name = $stmt->fetchColumn() !== false) { - $rooms[] = $room_name; - } - return $rooms; + return DBManager::get()->fetchFirst($sql, $sql_params); } /** -- cgit v1.0