Add advanced email filtering features: catch-all, plus-addressing, and pattern forwarding

Features:
- Catch-All Email: Forward unmatched emails for a domain to a single address
- Plus-Addressing: Enable user+tag@domain.com delivery with configurable delimiter
- Pattern Forwarding: Wildcard and regex-based email forwarding rules

Implementation:
- New database models: CatchAllEmail, EmailServerSettings, PlusAddressingOverride, PatternForwarding
- New UI pages with AngularJS controllers
- Backend methods in mailserverManager.py with ACL permission checks
- Auto-generates /etc/postfix/virtual_regexp for pattern rules
- Menu items added under Email section
This commit is contained in:
usmannasir
2025-11-28 14:22:34 +05:00
parent d3621923e5
commit 082c63bfa9
10 changed files with 2509 additions and 1 deletions

View File

@@ -1573,6 +1573,21 @@
<span>Email Forwarding</span>
</a>
{% endif %}
{% if admin or emailForwarding %}
<a href="{% url 'catchAllEmail' %}" class="menu-item">
<span>Catch-All Email</span>
</a>
{% endif %}
{% if admin or emailForwarding %}
<a href="{% url 'patternForwarding' %}" class="menu-item">
<span>Pattern Forwarding</span>
</a>
{% endif %}
{% if admin %}
<a href="{% url 'plusAddressingSettings' %}" class="menu-item">
<span>Plus-Addressing</span>
</a>
{% endif %}
{% if admin or changeEmailPassword %}
<a href="{% url 'changeEmailAccountPassword' %}" class="menu-item">
<span>Change Password</span>