Add an admin-configurable, server-wide default for the quarantine
notification interval and category. Previously these two per-mailbox
settings could only fall back to compile-time values in vars.inc.php and
there was no way to set a default from the UI or apply one to existing
mailboxes.
- Store defaults in Redis (Q_DEF_NOTIFICATION, Q_DEF_CATEGORY) via the
existing quarantine settings handler, alongside the other Q_* keys.
- New mailboxes inherit the global default through a new
get_quarantine_default() helper (Redis -> vars.inc.php fallback).
Per-mailbox user overrides keep working unchanged.
- New admin action "apply_existing" force-applies the default to all
existing mailboxes (admin only, confirm dialog in the UI).
- Add two dropdowns and an apply button to the admin quarantine settings
tab plus the corresponding language strings.
- Rewrite the notification email template (data/assets/templates/
quarantine.tpl) as a clean, mobile-first, responsive, dark-mode aware
layout. All Jinja2 variables, HTML escaping and qhandler links are
preserved; only installs with an empty custom template are affected.
No DB schema change, no migration, no Docker image rebuild.
* [DB][Web] optimize qhandler by keeping SHA2(id+qid) in new column quarantine.qhash, for feature #6555, might also help with #6361
* rspamd: only add qhash to new entries while passing rspamd not all existing
* compose: bump dovecot image + push to registry
---------
Co-authored-by: DerLinkman <niklas.meyer@servercow.de>
[Git] Ignore mail_plugins*
[Dovecot] Read mail_plugins from dynamically generated file
[Dovecot] Encrypt FTS
[Dovecot] Add break_imap_seach option to Solr
[Web] Add ability to send quarantine notification mails
[Web] Minor style fixes
[Web] Add new MAILBOX_DEFAULT_ATTRIBUTES (doc updates, anyone? :-( )
[Web] Use rcpt_smtp if rcpt_mime is not set
[Web] Other minor fixes
[Web] Allow to edit alias address
[Web] $_SESSION['return'] now contains arrays and allows multiple returned messages and log entries
[Web] Some language string changes
[Web] General SQL exception handler, remove all try catch handlers
[Web] Alias table now has an ID as primary key
[Web] Be more aggressive with localStorage cleaning
[Web] Add mailcow UI logs
[Web] Changes to _SESSION['return'] logic and logger (more to come)
[Web] Show last login
[Web, Postfix] Allow to disable sender check completely
[Web] Many minor fixes
[Web] Update some libs