[pmg-devel] [PATCH pmg-api/docs/gui] implement and combination and inversion of groups and objects
Dominik Csapak
d.csapak at proxmox.com
Fri Feb 9 13:54:24 CET 2024
This series is the backend part of the and/inversion addition to the
rule system.
The first 4 patches of pmg-api and the first one of pmg-docs are only
preparations and should not change the behaviour.
There is still one WIP patch for the ModGroup explosion, i did not find
a better way to do this for now.
The gui change is rather simple, just one additional drop down for
groups + one for each type in each rule.
changes from rfc:
* added docs + gui
* some minor bugfixes
* fixed the api (forgot to add the info to the GET calls in rfc)
* changed output for `pmgdb dump` so we get that info in the pmgreport too
pmg-api:
Dominik Csapak (12):
RuleCache: remove unnecessary copying of marks
RuleCache: reorganize to keep group structure
RuleCache: reorganize how we gather marks and spaminfo
api: refactor rule parameters
add objectgroup attributes and/invert
add rule attributes and/invert (for each relevant type)
RuleCache: load rule/objectgroup attributes from database
RuleCache: implement and/invert for when/from/to
MailQueue: return maximum AID
WIP: ModGroup: add possibility to explode to all targets
RuleCache: implement and/invert for what matches
pmgdb: extend dump output to include add/invert
src/PMG/API2/ObjectGroupHelpers.pm | 51 ++++-
src/PMG/API2/RuleDB.pm | 20 +-
src/PMG/API2/Rules.pm | 94 ++++++--
src/PMG/CLI/pmgdb.pm | 38 +++-
src/PMG/DBTools.pm | 30 +++
src/PMG/MailQueue.pm | 4 +-
src/PMG/ModGroup.pm | 17 ++
src/PMG/RuleCache.pm | 338 +++++++++++++++++++++++------
src/PMG/RuleDB.pm | 314 +++++++++++++++++++++------
src/PMG/RuleDB/Remove.pm | 28 ++-
src/PMG/Utils.pm | 2 +
src/bin/pmg-smtp-filter | 21 +-
12 files changed, 754 insertions(+), 203 deletions(-)
pmg-docs:
Dominik Csapak (2):
rule system: add a small section about matching rules
rule system: explain new and mode and invert flag
pmg-mail-filter.adoc | 54 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)
pmg-gui:
Dominik Csapak (2):
rules: use tree panel instead of grouping feature of the grid
rules/objects: add mode selector dropdown
css/ext6-pmg.css | 7 +++
js/Makefile | 1 +
js/ObjectGroup.js | 64 +++++++++++++++++++-
js/ObjectGroupConfiguration.js | 4 ++
js/RuleInfo.js | 103 ++++++++++++++++++++++++++-------
js/form/ModeSelector.js | 11 ++++
6 files changed, 167 insertions(+), 23 deletions(-)
create mode 100644 js/form/ModeSelector.js
--
2.30.2
More information about the pmg-devel
mailing list