aboutsummaryrefslogtreecommitdiff
path: root/app/controllers/settings
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2024-09-18 15:37:18 +0000
committerDavid Siegfried <david.siegfried@uni-vechta.de>2024-09-18 15:37:18 +0000
commit6fe2ff954192faedde1958dceae4458a90cc25f7 (patch)
treebfef22d8198a915706392cbb8bcab24afc480031 /app/controllers/settings
parentc14413977fadf3b23ed844f4537feb15a9758714 (diff)
regard deputies and fix warnings, fixes #4601
Closes #4601 Merge request studip/studip!3413
Diffstat (limited to 'app/controllers/settings')
-rw-r--r--app/controllers/settings/notification.php16
1 files changed, 11 insertions, 5 deletions
diff --git a/app/controllers/settings/notification.php b/app/controllers/settings/notification.php
index 5fc3e7f..e3efb7b 100644
--- a/app/controllers/settings/notification.php
+++ b/app/controllers/settings/notification.php
@@ -72,10 +72,16 @@ class Settings_NotificationController extends Settings_SettingsController
$groups = [];
$my_sem = [];
foreach ($seminars as $seminar) {
- $su = CourseMember::findOneBySQL(
- 'seminar_id = :course_id AND user_id = :user_id',
- ['course_id' => $seminar->id, 'user_id' => $GLOBALS['user']->id]
- );
+ $su = CourseMember::find([$seminar->id, User::findCurrent()->id]);
+
+ if (!$su && Config::get()->DEPUTIES_ENABLE) {
+ $su = Deputy::find([$seminar->id, User::findCurrent()->id]);
+ }
+
+ if (!$su) {
+ continue;
+ }
+
$my_sem[$seminar['Seminar_id']] = [
'obj_type' => "sem",
'sem_nr' => $seminar->veranstaltungsnummer,
@@ -84,7 +90,7 @@ class Settings_NotificationController extends Settings_SettingsController
'gruppe' => $su->gruppe,
'sem_status' => $seminar->status,
'sem_number' => Semester::getIndexById($seminar->start_semester->id),
- 'sem_number_end' => Semester::getIndexById($seminar->end_semester->id ?? '')
+ 'sem_number_end' => Semester::getIndexById($seminar->end_semester->id ?? '') ?: '-1',
];
if ($group_field) {
fill_groups($groups, Semester::getIndexById($seminar->start_semester->id), [