Dies ist eine alte Version des Dokuments!
Ein Filter ist ein Lucene Query-String, der jeder Anfrage angehängt wird. Derzeit können Filter nur direkt in der Datenbank Tabelle filter gepflegt werden.
+--------+--------------+------+-----+---------+-------+ | FIELD | TYPE | NULL | KEY | DEFAULT | Extra | +--------+--------------+------+-----+---------+-------+ | id | VARCHAR(64) | NO | PRI | | | Interne Id des Filters | userid | VARCHAR(64) | YES | | | | Benutzername (USER.id) dieses Filters | name | VARCHAR(255) | YES | | | | Name des Filters IN der Anzeige. | FILTER | text | YES | | NULL | | Lucene FILTER String +--------+--------------+------+-----+---------+-------+
Die Anforderung, daß ein Benutzer nur auf die E-Mails einer Adresse zugreifen darf, die nach einem bestimmten Datum gesendet wurden, kann mit dem folgenden Filter-Eintrag in die Datenbank implementiert werden.
Der Filter kann mit dem folgenden Kommandoaufruf in die Datenbank eingetragen werden:
echo "INSERT INTO filter VALUES( 'f01','hans.meier','ab Einstelldatum', 'NOT SortableDate:[197001010000 TO 201808010000]' );" | sqlite3 /var/lib/benno-web/bennoweb.sqlite
Der Benutzer hans.meier darf dann nur auf E-Mails zugreifen, die nach dem 01.08.2018 gesendet wurden.
Eine einzelne E-Mail soll bei keinem Benuzter gefunden angezeigt werden.
INSERT INTO filter VALUES( 'system01', 'ALL', 'System 01', '-HEADER-MESSAGE-ID:b5964492@virus.net OR -HEADER-MESSAGE-ID:32ff6770@virus.com' );