Dieses Modul stellt einen Konsolenbefehl bereit, der bei veraltete Benutzerdaten die persönlichen Angaben der Nutzenden in der Datenbank bereinigt.
Das CleanUpUserData-Modul erweitert VuFind um einen Wartungsbefehl zur Datenbankbereinigung. Die Hauptfunktionen umfassen:
- Bereinigen von Benutzerdatensätzen, deren letzter Login älter als eine definierte Stundenanzahl ist
- Konfigurierbare Zeitgrenze über den Parameter
--hours(Standardwert: 24 Stunden) - Bereitstellung eines Bash-Skripts für den einfachen Einsatz als Cronjob
- VuFind 9.0 oder höher
- PHP 7.0 oder höher
- Integrieren Sie das Modul im
module-Verzeichnis von VuFind. - Aktivieren Sie das Modul, indem Sie
CleanUpUserDatazur Liste der aktiven Module hinzufügen (z. B. in der UmgebungsvariableVUFIND_LOCAL_MODULES).
Das Modul bietet eine Standardkonfiguration, die in das local-Verzeichnis von VuFind kopiert werden kann (config/vufind/CleanUpUserData.ini). Darin kann der Standwert für die Zeitgrenze in Stunden angepasst, sowie die zu bereinigenden Felder konfiguriert werden.
[Global]
default_hours = 24
[CleanUp]
firstname = ''
lastname = ''
cat_pass_enc = ''
created = '2000-01-01 00:00:00'
last_language = ''
email = ''
Der Befehl kann direkt über die VuFind-Konsole aufgerufen werden, sofern die Umgebungsvariablen VUFIND_HOME und VUFIND_LOCAL_DIR gesetzt sind.
php public/index.php util/cleanup_user_dataMit optionalem --hours-Parameter:
php public/index.php util/cleanup_user_data --hours 48| Parameter | Beschreibung | Standardwert |
|---|---|---|
--hours |
Zeitraum in Stunden. Benutzerdaten, deren letzter Login länger zurückliegt, werden bereinigt | 24 |
Im Verzeichnis scripts/ befindet sich das Skript clean_up_user_data.sh, das die notwendigen Umgebungsvariablen setzt und den Befehl ausführt. Innerhalb des Scripts müssen dafür zunächst die Umgebungsvariablen VUFIND_HOME und VUFIND_LOCAL_DIR an die lokale Umgebung angepasst werden.
# Ohne Parameter (Standard: 24 Stunden)
./scripts/clean_up_user_data.sh
# Mit benutzerdefinierter Stundenanzahl
./scripts/clean_up_user_data.sh 48Das Skript setzt folgende Umgebungsvariablen:
VUFIND_HOME: Pfad zur VuFind-InstallationVUFIND_LOCAL_DIR: Pfad zur lokalen KonfigurationVUFIND_LOCAL_MODULES: Aktivierte lokale Module
Das Skript eignet sich für den Einsatz als Cronjob, um die Datenbankbereinigung regelmäßig und automatisiert durchzuführen.
CleanUpUserData/
├── config/
│ ├── vufind
│ │ └── CleanUpUserData.ini # Beispielkonfiguration
│ └── module.config.php # Modulkonfiguration
├── scripts/
│ └── clean_up_user_data.sh # Bash-Skript für den Aufruf
├── src/CleanUpUserData/
│ └── Command/Util/
│ ├── CleanUpUserDataCommand.php # Konsolenbefehl
│ └── CleanUpUserDataCommandFactory.php # Factory für den Konsolenbefehl
├── tests/unit-tests/src/CleanUpUserData/Command/Util/
│ └── CleanUpUserDataCommandTest.php # Test für den Konsolenbefehl
├── .gitignore
├── Module.php # Modulklasse
└── README.md
util/cleanup_user_data