From 4e92f802c47cda96643b0e542cfd60f9efd09732 Mon Sep 17 00:00:00 2001 From: nd <nd@cccv.de> Date: Tue, 31 Aug 2021 19:24:56 +0000 Subject: [PATCH] set user mail adress to verified if it matches the one in ldap --- .../management/commands/syncldapmemberships.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/postorius_ldap_membership_management/management/commands/syncldapmemberships.py b/postorius_ldap_membership_management/management/commands/syncldapmemberships.py index e1fa114..9397faf 100644 --- a/postorius_ldap_membership_management/management/commands/syncldapmemberships.py +++ b/postorius_ldap_membership_management/management/commands/syncldapmemberships.py @@ -10,6 +10,7 @@ from urllib.error import HTTPError from postorius.models import List, MailmanUser from postorius.utils import get_mailman_client +from allauth.account.models import EmailAddress logger = logging.getLogger(__name__) @@ -44,6 +45,14 @@ class Command(BaseCommand): logger.warning("update display_name on {} to {}".format(user.username, user.get_full_name())) mm_users[user.username].display_name = user.get_full_name() mm_users[user.username].save() + # set user mail adresses to verified if they match those in ldap + user_emails = EmailAddress.objects.filter(user=user) + for mail in user_emails: + if mail.email == user.email: + logger.warning("update email.verified on user {} for address {} to True".format(user.username, mail.email)) + mail.verified = True + mail.save() + mailman_id2username = {mm_users[i].user_id: i for i in mm_users} -- GitLab