From 6296904898b4dc354f78fcb4a4df8d954daae319 Mon Sep 17 00:00:00 2001 From: Christoph Wurst Date: Tue, 17 Sep 2024 12:55:44 +0200 Subject: [PATCH] fix: Log attribute updates Signed-off-by: Christoph Wurst --- lib/UserBackend.php | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/lib/UserBackend.php b/lib/UserBackend.php index 98dd1e02..20526ecf 100644 --- a/lib/UserBackend.php +++ b/lib/UserBackend.php @@ -564,23 +564,52 @@ public function updateAttributes(string $uid, array $attributes): void { } if ($user !== null) { + $this->logger->debug('Updating attributes for existing user', ['app' => 'user_saml', 'user' => $user->getUID()]); $currentEmail = (string)(method_exists($user, 'getSystemEMailAddress') ? $user->getSystemEMailAddress() : $user->getEMailAddress()); if ($newEmail !== null && $currentEmail !== $newEmail) { $user->setEMailAddress($newEmail); + $this->logger->debug('Email address updated', ['app' => 'user_saml', 'user' => $user->getUID()]); + } else { + $this->logger->debug('Email address not updated', [ + 'app' => 'user_saml', + 'user' => $user->getUID(), + 'currentEmail' => $currentEmail, + 'newEmail' => $newEmail, + ]); } $currentDisplayname = $this->getDisplayName($uid); if ($newDisplayname !== null && $currentDisplayname !== $newDisplayname) { $this->setDisplayName($uid, $newDisplayname); + $this->logger->debug('Display name updated', ['app' => 'user_saml', 'user' => $user->getUID()]); $this->eventDispatcher->dispatchTyped(new UserChangedEvent($user, 'displayName', $newDisplayname, $currentDisplayname)); + $this->logger->debug('Display name update event dispatched', ['app' => 'user_saml', 'user' => $user->getUID()]); + } else { + $this->logger->debug('Display name not updated', [ + 'app' => 'user_saml', + 'user' => $user->getUID(), + 'newDisplayname' => $newDisplayname, + 'currentDisplayname' => $currentDisplayname, + ]); } if ($newQuota !== null) { $user->setQuota($newQuota); + $this->logger->debug('Quota updated', ['app' => 'user_saml', 'user' => $user->getUID()]); + } else { + $this->logger->debug('Quota not updated', [ + 'app' => 'user_saml', + 'user' => $user->getUID(), + ]); } $this->groupManager->handleIncomingGroups($user, $newGroups ?? []); + $this->logger->debug('Incoming groups updated', [ + 'app' => 'user_saml', + 'user' => $user->getUID(), + 'groups' => $newGroups, + ]); } }