fix: wrongly set alias custom_domain when custom_domain is in EMAIL_ALIAS
This commit is contained in:
parent
f5efab940c
commit
806f7016ae
|
@ -66,7 +66,6 @@ def new_custom_alias():
|
||||||
|
|
||||||
if alias_suffix.startswith("@"):
|
if alias_suffix.startswith("@"):
|
||||||
alias_domain = alias_suffix[1:]
|
alias_domain = alias_suffix[1:]
|
||||||
if alias_domain not in ALIAS_DOMAINS:
|
|
||||||
domain = CustomDomain.get_by(domain=alias_domain)
|
domain = CustomDomain.get_by(domain=alias_domain)
|
||||||
LOG.d("set alias %s to domain %s", full_alias, domain)
|
LOG.d("set alias %s to domain %s", full_alias, domain)
|
||||||
alias.custom_domain_id = domain.id
|
alias.custom_domain_id = domain.id
|
||||||
|
@ -144,7 +143,6 @@ def new_custom_alias_v2():
|
||||||
|
|
||||||
if alias_suffix.startswith("@"):
|
if alias_suffix.startswith("@"):
|
||||||
alias_domain = alias_suffix[1:]
|
alias_domain = alias_suffix[1:]
|
||||||
if alias_domain not in ALIAS_DOMAINS:
|
|
||||||
domain = CustomDomain.get_by(domain=alias_domain)
|
domain = CustomDomain.get_by(domain=alias_domain)
|
||||||
LOG.d("set alias %s to domain %s", full_alias, domain)
|
LOG.d("set alias %s to domain %s", full_alias, domain)
|
||||||
alias.custom_domain_id = domain.id
|
alias.custom_domain_id = domain.id
|
||||||
|
|
|
@ -8,7 +8,7 @@ from app.config import (
|
||||||
CUSTOM_ALIAS_SECRET,
|
CUSTOM_ALIAS_SECRET,
|
||||||
)
|
)
|
||||||
from app.dashboard.base import dashboard_bp
|
from app.dashboard.base import dashboard_bp
|
||||||
from app.email_utils import email_belongs_to_alias_domains, get_email_domain_part
|
from app.email_utils import email_belongs_to_alias_domains
|
||||||
from app.extensions import db
|
from app.extensions import db
|
||||||
from app.log import LOG
|
from app.log import LOG
|
||||||
from app.models import Alias, CustomDomain, DeletedAlias, Mailbox, User
|
from app.models import Alias, CustomDomain, DeletedAlias, Mailbox, User
|
||||||
|
@ -101,11 +101,11 @@ def custom_alias():
|
||||||
)
|
)
|
||||||
|
|
||||||
# get the custom_domain_id if alias is created with a custom domain
|
# get the custom_domain_id if alias is created with a custom domain
|
||||||
alias_domain = get_email_domain_part(full_alias)
|
if alias_suffix.startswith("@"):
|
||||||
custom_domain = CustomDomain.get_by(domain=alias_domain)
|
alias_domain = alias_suffix[1:]
|
||||||
if custom_domain:
|
domain = CustomDomain.get_by(domain=alias_domain)
|
||||||
LOG.d("Set alias %s domain to %s", full_alias, custom_domain)
|
LOG.d("Set alias %s domain to %s", full_alias, domain)
|
||||||
alias.custom_domain_id = custom_domain.id
|
alias.custom_domain_id = domain.id
|
||||||
|
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
flash(f"Alias {full_alias} has been created", "success")
|
flash(f"Alias {full_alias} has been created", "success")
|
||||||
|
|
|
@ -187,10 +187,10 @@ def authorize():
|
||||||
)
|
)
|
||||||
|
|
||||||
# get the custom_domain_id if alias is created with a custom domain
|
# get the custom_domain_id if alias is created with a custom domain
|
||||||
alias_domain = get_email_domain_part(full_alias)
|
if alias_suffix.startswith("@"):
|
||||||
custom_domain = CustomDomain.get_by(domain=alias_domain)
|
alias_domain = alias_suffix[1:]
|
||||||
if custom_domain:
|
domain = CustomDomain.get_by(domain=alias_domain)
|
||||||
alias.custom_domain_id = custom_domain.id
|
alias.custom_domain_id = domain.id
|
||||||
|
|
||||||
db.session.flush()
|
db.session.flush()
|
||||||
flash(f"Alias {full_alias} has been created", "success")
|
flash(f"Alias {full_alias} has been created", "success")
|
||||||
|
|
Loading…
Reference in a new issue