From 364fb43c6288e5a2c51ae88995aab0b6c62a1f61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arne=20Schr=C3=B6der?= Date: Wed, 4 Mar 2026 12:33:03 +0100 Subject: fix user data handling on soap fault, re #5596 --- lib/ilias_interface/ConnectedIlias.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/ilias_interface/ConnectedIlias.php b/lib/ilias_interface/ConnectedIlias.php index 8df5c7d..fa9cbcc 100644 --- a/lib/ilias_interface/ConnectedIlias.php +++ b/lib/ilias_interface/ConnectedIlias.php @@ -1518,7 +1518,7 @@ class ConnectedIlias if ($this->user->isConnected()) { $ilias_user_id = $this->soap_client->lookupUser($this->user->getUsername()); $ilias_user_exists = $this->soap_client->getUser($this->user->getId()); - if (empty($this->soap_client->error) && empty($ilias_user_id) && ! is_array($ilias_user_exists)) { + if (empty($this->soap_client->error) && empty($ilias_user_id) && ! is_array($ilias_user_exists)) { $this->soap_client->setCachingStatus(false); $this->soap_client->clearCache(); $user_id = $this->soap_client->lookupUser($this->user->getUsername()); @@ -1530,8 +1530,11 @@ class ConnectedIlias return false; } } else if (!empty($this->soap_client->error) && $GLOBALS['user']->perms !== 'root') { - $this->error[] = sprintf(_('User-Daten aus dem System %s konnten nicht abgerufen werden.'), $this->ilias_config['name']); + $this->error[] = sprintf(_('Fehler beim Zugriff auf das System %s.'), $this->ilias_config['name']); $this->ilias_config['active'] = false; + } else if (!empty($this->user->getId()) && !empty($this->user->getId()) && ! is_array($ilias_user_exists)) { + $this->error[] = sprintf(_('User-Daten aus dem System %s konnten nicht abgerufen werden.'), $this->ilias_config['name']); + return false; } } return true; -- cgit v1.0