From 70802bff1752dea3eb5a12adce8b186a71e4d020 Mon Sep 17 00:00:00 2001 From: Son NK Date: Sun, 23 Feb 2020 13:41:27 +0700 Subject: [PATCH] Create User.mailboxes() --- app/dashboard/views/custom_alias.py | 4 +--- app/models.py | 12 ++++++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/dashboard/views/custom_alias.py b/app/dashboard/views/custom_alias.py index e0f7e7da..cdea83fc 100644 --- a/app/dashboard/views/custom_alias.py +++ b/app/dashboard/views/custom_alias.py @@ -43,9 +43,7 @@ def custom_alias(): ) ) - mailboxes = [current_user.email] - for mailbox in Mailbox.query.filter_by(user_id=current_user.id, verified=True): - mailboxes.append(mailbox.email) + mailboxes = current_user.mailboxes() if request.method == "POST": alias_prefix = request.form.get("prefix") diff --git a/app/models.py b/app/models.py index 344d23e8..1de69fa1 100644 --- a/app/models.py +++ b/app/models.py @@ -278,6 +278,18 @@ class User(db.Model, ModelMixin, UserMixin): def verified_custom_domains(self): return CustomDomain.query.filter_by(user_id=self.id, verified=True).all() + def mailboxes(self) -> [str]: + """list of mailbox emails that user own""" + if self.full_mailbox: + mailboxes = [] + else: + mailboxes = [self.email] + + for mailbox in Mailbox.query.filter_by(user_id=self.id, verified=True): + mailboxes.append(mailbox.email) + + return mailboxes + def __repr__(self): return f""