12.05.2016  Linktip 

Verfallsdatum

Ein Benutzer kann für jeden Eintrag ein Verfallsdatum angeben. Bei Erreichen des angegebenen Zeitpunktes wird der Besitzer automatisch per E-Mail benachrichtigt. Außerdem werden die Zugriffsrechte des Eintrags auf den Besitzer eingeschränkt. Das Löschen oder Verlängern des Eintrags liegt in der Verantwortung des Besitzers.

Vorgehensweise und Funktionalität

  1. Eingabe eines Verfallsdatums
  2. Verstecken verfallener Einträge
  3. Benachrichtigen Benutzer
  4. Wiederfreigabe eines verfallenen Eintrags
Verfallsdatum


Eingeben eines Verfallsdatums

Wenn der Dienst Verfallsdatum bei einem WebGenesis®-Server eingebettet ist, werden die Metadaten aller Eintrags-Kategorien um das Feld Verfallsdatum erweitert.

Verfallsdatum

Jeder Benutzer mit dem Zugriffsrecht Hinzufügen auf einem Eintrag, kann ein Verfallsdatum für diesen Eintrag eingeben. Mit dem Datum wird festgelegt, wann ein Eintrag nicht mehr für die Öffentlichkeit, sondern nur noch für den Besitzer sichtbar ist.
Dies ist zum Beispiel von Nutzen, wenn es sich um Einträge handelt, die Termine enthalten. Das Verfallsdatum kann so bestimmt werden, dass der Eintrag verborgen wird, sobald die Termine nicht mehr aktuell sind.

Vor der Speicherung des Verfallsdatums wird geprüft, ob es sich um ein gültiges Datum handelt und ob es nicht bereits verfallen ist. Ansonsten wird eine entsprechende Fehlermeldung ausgegeben.

Die Prüfung des Verfallsdatums ist abgeschaltet, wenn das Eingabefeld leer ist.



Verbergen verfallener Einträge

Der Automationsprozess vergleicht das Verfallsdatum jedes Eintrags, bei dem ein Verfallsdatum angegeben ist, mit dem aktuellen Datum. Wird ein veralteter Eintrag gefunden, bekommt er den Zustand OUTDATED. Einträge mit dem Status OUTDATED sind nur noch für den Besitzer des Eintrags sichtbar. Die Darstellung bei den Metadaten sieht dann folgendermaßen aus:

Verfallsdatum
Hinweis: Ein Benutzer mit dem Zugriffsrecht Hinzufügen kann zwar das Verfallsdatum für einen Eintrag setzen, bei dem er nicht der Besitzer ist. Er kann einen verfallenen Eintrag aber nicht mehr freischalten, weil er nicht mehr an den Eintrag herankommt!.


Besitzer benachrichtigen

Wenn das Verfallsdatum abgelaufen ist, wird dem Besitzer des verfallenen Eintrags eine Nachricht per Email gesendet. Als Absender der Nachricht wird der Administrator angegeben, so dass eventuelle Zustellungsfehlermeldungen an diesen weitergeleitet werden. Besitzt der Besitzer keine E-Mail-Adresse, geht ebenfalls eine E-Mail an den Administrator.



Verfallenen Eintrag wieder freigeben

Ein Eintrag mit Status OUTDATED kann von seinem Besitzer wieder freigegeben werden. Hierzu muss entweder ein neues Verfallsdatum eingegeben oder das Verfallsdatum gelöscht werden. Der Eintrag wird dann nach der Speicherung der Änderung wieder freigegeben.



Konfiguration

Um die Benachrichtigung des Besitzers eines verfallenen Eintrags zu ermöglichen, müssen die E-Mail-Einstellungen vom System Administrator konfiguriert werden:

Mail.Server=<name of mail server>
Mail.OutdatedForm=<Home>/admin/conf/Outdated.txt
Mail.Admin=<email address of administrator>
Mail.User=<email account of administrator>

Der Titel einer Benachrichtigungs-E-Mail kann in der Datei
ui/Messages geändert werden. Der Inhalt der Mail wird in der Datei, die als Parameter für Mail.OutdatedForm angegeben wird, festgelegt. Diese Datei ist eine EJava-Form, die die Variablen user und entry verwenden kann. Der Benachrichtigungstext sollte folgende Semantik haben:

Sehr geehrte(r) Frau/Herr [IS user.address.get().name],
'[IS entry.name]' mit der Nummer '[IS entry.id]'
ist verfallen. Er ist nur noch für Sie lesbar.
Bitte aktualisieren Sie den Eintrag oder
entfernen Sie ihn aus dem System:

http://%SERVERNAME%/servlet/is/[IS entry.id]

über die Variable

Expiration.Interval=<interval in seconds>

kann angegeben werden, in welchem Zeitabstand der Dienst ausgeführt wird. Wird kein Wert angegeben, ist die Standardeinstellung 1 Stunde.



Papierkorb

Dieser Dienst ändert das Verhalten beim Löschen von Einträgen. Einträge werden beim Löschen nicht gleich aus der Datenbank entfernt, sondern erhalten zunächst nur einen "gelöscht"-Status. Die Gesamtheit der Einträge mit "gelöscht"-Status bildet den Inhalt eines virtuellen Papierkorbs.

Vorgehensweise und Funktionalität

  1. Löschen eines Eintrags
  2. Anzeige des "virtuellen Papierkorbs"
  3. Wiederherstellen eines Eintrags
  4. Endgültiges Entfernen eines Eintrags
Papierkorb


Löschen eines Eintrags

Löscht ein Benutzer einen oder mehrere Einträge, sind diese weiterhin im System vorhanden. Sie erhalten einen "gelöscht"-Status, sind in der Eintragshierarchie nicht mehr sichtbar und erscheinen beim direkten Zugriff als gesperrt (es erscheint der Login-Dialog). Superuser können auf Einträge mit "gelöscht"-Status direkt zugreifen, jedoch sind diese in Suchergebnissen, Untereinträgen, etc. auch für Superuser unsichtbar.


Anzeige des "virtuellen Papierkorbs" (Superuser)

Ein Superuser kann die Papierkorbansicht aus dem Extras-Menü der Autorenumgebung aufrufen. Diese Ansicht listet die Einträge mit "gelöscht"-Status auf. Wurde ein ganzer Teilbaum gelöscht, wird jeweils nur der oberste Eintrag angezeigt.

Dem Superuser werden in der Papierkorbansicht die folgenden Möglichkeiten angeboten:

  1. Anzeigen eines gelöschten Eintrags, durch Klicken auf den Titel des Eintrages
  2. Wiederherstellen eines Eintrags bzw. Eintrags-Teilbaums
  3. Endgültiges Löschen eines Eintrags bzw. Eintrags-Teilbaums
  4. Leeren des gesamten Papierkorbs nach Rückfrage
Ansicht Papierkorb

Wiederherstellen eines Eintrags (Superuser)

Diese Funktion setzt den "gelöscht"-Status des Eintrags bzw. Eintrags-Teilbaums zurück.


Endgültiges Entfernen eines Eintrags (Superuser)

Diese Funktion löscht den Eintrag oder Teilbaum aus dem System. Sie ist identisch mit dem herkömmlichen Löschen-Befehl wenn der Papierkorb-Dienst nicht installiert ist. Wählt der Superuser in der Papierkorbansicht "Leeren des gesamten Papierkorbs", wird diese Funktion auf den gesamten Inhalt des virtuellen Papierkorbs angewendet.