You've already forked Mailu
mirror of
https://github.com/Mailu/Mailu.git
synced 2025-11-23 22:04:47 +02:00
Simplify alias precedence handling; Remove bogus changelog
This commit is contained in:
@@ -111,7 +111,6 @@ v1.6.0 - unreleased
|
|||||||
- Bug: Fix rainloop permissions ([#637](https://github.com/Mailu/Mailu/issues/637))
|
- Bug: Fix rainloop permissions ([#637](https://github.com/Mailu/Mailu/issues/637))
|
||||||
- Bug: Fix broken webmail and logo url in admin ([#792](https://github.com/Mailu/Mailu/issues/792))
|
- Bug: Fix broken webmail and logo url in admin ([#792](https://github.com/Mailu/Mailu/issues/792))
|
||||||
- Bug: Don't recursivly chown on mailboxes ([#776](https://github.com/Mailu/Mailu/issues/776))
|
- Bug: Don't recursivly chown on mailboxes ([#776](https://github.com/Mailu/Mailu/issues/776))
|
||||||
- Bug: Don't deliver alias and recipient-delimiter to overwhelming wildcard-alias ([#813](https://github.com/Mailu/Mailu/issues/813))
|
|
||||||
|
|
||||||
v1.5.1 - 2017-11-21
|
v1.5.1 - 2017-11-21
|
||||||
-------------------
|
-------------------
|
||||||
|
|||||||
@@ -260,24 +260,14 @@ class Email(object):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def resolve_destination(cls, localpart, domain_name, ignore_forward_keep=False):
|
def resolve_destination(cls, localpart, domain_name, ignore_forward_keep=False):
|
||||||
localpart_stripped = None
|
localpart_maybe_split = localpart
|
||||||
stripped_alias = None
|
|
||||||
|
|
||||||
if os.environ.get('RECIPIENT_DELIMITER') in localpart:
|
if os.environ.get('RECIPIENT_DELIMITER') in localpart:
|
||||||
localpart_stripped = localpart.rsplit(os.environ.get('RECIPIENT_DELIMITER'), 1)[0]
|
localpart_maybe_split = localpart.rsplit(os.environ.get('RECIPIENT_DELIMITER'), 1)[0]
|
||||||
|
|
||||||
pure_alias = Alias.resolve(localpart, domain_name)
|
alias = Alias.resolve(localpart_maybe_split, domain_name)
|
||||||
has_wildcard = pure_alias and '%' in pure_alias.email and pure_alias.wildcard
|
|
||||||
stripped_alias = Alias.resolve(localpart_stripped, domain_name)
|
|
||||||
|
|
||||||
if pure_alias and not has_wildcard:
|
if alias:
|
||||||
return pure_alias.destination
|
return alias.destination
|
||||||
elif not pure_alias and stripped_alias:
|
|
||||||
return stripped_alias.destination
|
|
||||||
elif has_wildcard and localpart_stripped and stripped_alias:
|
|
||||||
return stripped_alias.destination
|
|
||||||
elif pure_alias:
|
|
||||||
return pure_alias.destination
|
|
||||||
|
|
||||||
user = User.query.get('{}@{}'.format(localpart, domain_name))
|
user = User.query.get('{}@{}'.format(localpart, domain_name))
|
||||||
if not user and localpart_stripped:
|
if not user and localpart_stripped:
|
||||||
|
|||||||
Reference in New Issue
Block a user