From a75e32afff2450c77a101fef7c609a57df118d66 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Wed, 3 Jul 2024 07:14:47 +0000 Subject: [PATCH] fix userdomain lookup for selection 'no userdomain', fixes #4353 Closes #4353 Merge request studip/studip!3160 --- lib/classes/UserLookup.class.php | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/classes/UserLookup.class.php b/lib/classes/UserLookup.class.php index ddf9276bc0a..f7c6beee64c 100644 --- a/lib/classes/UserLookup.class.php +++ b/lib/classes/UserLookup.class.php @@ -441,10 +441,26 @@ class UserLookup return []; } - $query = "SELECT `user_id` + $query = "SELECT DISTINCT `user_id` FROM `user_userdomains` WHERE `userdomain_id` IN (?)"; - return DBManager::get()->fetchFirst($query, [$needles]); + $result = DBManager::get()->fetchFirst($query, [$needles]); + + if (in_array('keine', $needles)) { + $query = "SELECT `user_id` + FROM `auth_user_md5` + WHERE `user_id` NOT IN ( + SELECT `user_id` + FROM `user_userdomains` + )"; + $result = array_merge( + $result, + DBManager::get()->fetchFirst($query) + ); + $result = array_unique($result); + } + + return $result; } /** -- GitLab