From 66621978e6cb21fa5b8ea31286d66281b33c285f Mon Sep 17 00:00:00 2001 From: Dan Braghis <dan.braghis@torchbox.com> Date: Wed, 7 Mar 2018 10:18:22 +0000 Subject: [PATCH] DRY for staff check --- .../users/management/commands/migrate_users.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/opentech/apply/users/management/commands/migrate_users.py b/opentech/apply/users/management/commands/migrate_users.py index 2883edb94..5db04a85b 100644 --- a/opentech/apply/users/management/commands/migrate_users.py +++ b/opentech/apply/users/management/commands/migrate_users.py @@ -67,8 +67,7 @@ class Command(BaseCommand): 'dev': 'Administrator', } - _, email_domain = user.get('mail').split('@') - if email_domain in settings.STAFF_EMAIL_DOMAINS: + if self.is_staff(user['mail']): groups.append(self.groups.filter(name=STAFF_GROUP_NAME).first()) roles = [role for role in user.get('roles').values() if role != "authenticated user"] @@ -81,11 +80,12 @@ class Command(BaseCommand): return groups def get_email(self, user, anonymize=False): - if not anonymize: - return user['mail'] - - _, email_domain = user['mail'].split('@') - if email_domain in settings.STAFF_EMAIL_DOMAINS: - return user['mail'] + email = user['mail'] + if not anonymize or self.is_staff(email): + return email return "aeon+%s@torchbox.com" % user['uid'] + + def is_staff(self, email): + _, email_domain = email.split('@') + return email_domain in settings.STAFF_EMAIL_DOMAINS -- GitLab