Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/mail.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2022-06-10 16:09:13 +0300
committerDaniel Kesselberg <mail@danielkesselberg.de>2022-06-10 16:09:13 +0300
commit4a1d88502906e2eb836a14ee2c3c4c597b265884 (patch)
tree9f706bc5e9d0c717aecb5c18f0203237f1cffb80
parentefd9941c6513d7cc5b2387571f707ae3b9bfb7fe (diff)
Alias provisioning: Skip alias when identical to account emailenh/noid/skip-alias-when-identical-to-account-email
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
-rw-r--r--lib/Service/Provisioning/Manager.php8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/Service/Provisioning/Manager.php b/lib/Service/Provisioning/Manager.php
index 7207bbf60..c52375f59 100644
--- a/lib/Service/Provisioning/Manager.php
+++ b/lib/Service/Provisioning/Manager.php
@@ -146,8 +146,12 @@ class Manager {
*
* @throws \OCP\DB\Exception
*/
- private function createNewAliases(string $userId, int $accountId, array $newAliases, string $displayName): void {
+ private function createNewAliases(string $userId, int $accountId, string $accountEmail, array $newAliases, string $displayName): void {
foreach ($newAliases as $newAlias) {
+ if ($newAlias === $accountEmail) {
+ continue; // skip alias when identical to account email
+ }
+
try {
$this->aliasMapper->findByAlias($newAlias, $userId);
} catch (DoesNotExistException $e) {
@@ -236,7 +240,7 @@ class Manager {
}
try {
- $this->createNewAliases($user->getUID(), $mailAccount->getId(), $provisioning->getAliases(), $user->getDisplayName());
+ $this->createNewAliases($user->getUID(), $mailAccount->getId(), $mailAccount->getEmail(), $provisioning->getAliases(), $user->getDisplayName());
} catch (\Throwable $e) {
$this->logger->warning('Creating new aliases failed', ['exception' => $e]);
}