From 56018dcad34e9d464d387ce1ad4e70c934c87fba Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Tue, 2 Apr 2024 10:58:21 +0000
Subject: [PATCH] fixes #3925

Closes #3925

Merge request studip/studip!2780
---
 app/controllers/my_courses.php        | 22 ++++++----------------
 app/views/my_courses/courseexport.php |  6 ++++++
 lib/classes/MyRealmModel.php          |  4 +++-
 3 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/app/controllers/my_courses.php b/app/controllers/my_courses.php
index 410947bf05f..cff0933a413 100644
--- a/app/controllers/my_courses.php
+++ b/app/controllers/my_courses.php
@@ -131,26 +131,16 @@ class MyCoursesController extends AuthenticatedController
             throw new AccessDeniedException();
         }
 
-        $this->with_modules = Request::bool('modules');
-
-        $this->sem_data = Semester::getAllAsArray();
-
-        $this->group_field = 'sem_number';
-
-        // Needed parameters for selecting courses
-        $params = [
-            'group_field'         => $this->group_field,
+        $template = $this->get_template_factory()->open('my_courses/courseexport');
+        $template->sem_courses = MyRealmModel::getPreparedCourses('', [
+            'group_field'         => 'sem_number',
             'order_by'            => null,
             'order'               => 'asc',
             'studygroups_enabled' => Config::get()->MY_COURSES_ENABLE_STUDYGROUPS,
             'deputies_enabled'    => Config::get()->DEPUTIES_ENABLE,
-        ];
-
-        $this->sem_courses  = MyRealmModel::getPreparedCourses('all', $params);
-
-        $factory  = $this->get_template_factory();
-        $template = $factory->open('my_courses/courseexport');
-        $template->set_attributes($this->get_assigned_variables());
+        ]);
+        $template->sem_data = Semester::getAllAsArray();
+        $template->with_modules = Request::bool('modules');
         $template->image_style = 'height: 6px; width: 8px;';
 
         $doc = new ExportPDF();
diff --git a/app/views/my_courses/courseexport.php b/app/views/my_courses/courseexport.php
index d9531877acd..b08c69d1b74 100644
--- a/app/views/my_courses/courseexport.php
+++ b/app/views/my_courses/courseexport.php
@@ -1,3 +1,9 @@
+<?php
+/**
+ * @var array|null $sem_courses
+ * @var array $sem_data
+ */
+?>
 <html>
     <head>
        <meta charset="UTF-8">
diff --git a/lib/classes/MyRealmModel.php b/lib/classes/MyRealmModel.php
index 8008580dffa..5b7a29b69e7 100644
--- a/lib/classes/MyRealmModel.php
+++ b/lib/classes/MyRealmModel.php
@@ -232,7 +232,9 @@ class MyRealmModel
         $current_sem = null;
         foreach ($sem_data as $sem_key => $one_sem) {
             $current_sem = $sem_key;
-            if (!$one_sem['past']) break;
+            if (!$one_sem['past']) {
+                break;
+            }
         }
 
         if (isset($sem_data[$current_sem + 1])) {
-- 
GitLab