Joomla 6 Mitteilung

Wir machen vom 20.Dezember bis zum 12. Januar Betriebsferien.

Wir freuen uns mitteilen zu können, dass seit dem 14. Oktober 2025 alle unsere Joomla Erweiterungen mit Joomla 6 kompatible sind.

Für alle die gerade noch von Joomla 3 auf 4 aktualisieren: Anleitungen für die Joomla 4 Migration gibt es hier:

Es gibt eine eigenständige Dokumentation für Visforms für Joomla 4 und eine für Visforms auf Joomla 5 und 6

Forum

Visforms Subscription Inhaber können in unserem Forum Fragen stellen. Bitte mit dem entsprechenden Benutzer anmelden.
Jeder kann lesend auf das Forum zugreifen.

Bitte stellen Sie nur 1 Frage pro Thema.

Wichtige Angaben für fast jede Frage:
V1: Welche Visforms-Version läuft?
V2: Welche Joomla-Version läuft?
V3: Welche PHP-Version läuft?

automatisches Löschen vfautodeletedata visformsdatadelete

Mehr
3 Wochen 12 Stunden her #11933 von buttosse
Hallo, 
für einen Kunden benötige ich die eigentlich super-praktische Funktion des automatischen Löschens in der Art, dass die Formulareinträge NICHT wirklich gelöscht, sondern nur auf "versteckt" oder "Nicht veröffentlicht" gesetzt werden, damit sie nach X Tagen im Frontend automatisch nicht mehr angezeigt werden, im 'Notfall' aber wieder re-aktiviert werden können.
PHP- und MySQL-kenntnisse sind vorhanden, ich könnte einen Sql-Befehl wie "delete * from table..." also ggf. manuell selber ändern.  Bei einem ersten Blick in das Verzeichnis /vfautodeletedata habe ich aber keinen entsprechenden Befehl finden können. 
Da ich nur EINE Frage stellen darf/soll, lautet diese:  könnt ihr mir einen Tipp geben, wie ich das Gewünschte erreichen kann, bzw.  in welcher Datei ich den Befehl zum Löschen der 'abgelaufenen' Einträge finde?
Vielen Dank im Voraus und viele Grüße,
M.Meier

Joomla 5.4.1, VisForms 5.4.1, PHP 8.3.26

 

Mehr
3 Wochen 10 Stunden her #11934 von Administrator AV
Hallo M. Meier,

der Mechanismus des automatischen Daten Löschen ist etwas komplexer.
Er besteht aus 2 Plugins.
Das Plugin visforms/vfautodeletedata erzeugt die Administrations-Oberfläche/den Tab in der Formularkonfiguration, über die du ds Löschen konfigurieren und die Konfiguration speichern kannst.
Das eigentliche Löschen macht das system Plugin visformsdatadelete.

Je nachdem wie das Daten automatisch Löschen im Formular konfiguriert ist, muss der Lösch-Prozess eine ganze Menge Dinge tun.
Entsprechend umfangreich ist auch die Funktion deleteRecords() im plugins/system/visformsdatadelete/src/Extension/Visformsdatadelete.php

Diese Funktion ist also die Stelle nach der du gefragt hast.

Wenn du den Code im System Plugin von Visforms änderst wird dir das bei jedem Visforms Update überschrieben.

Evtl. wäre es in deinem Fall aber einfacher, ein eigenes kleines System Plugin zu schreiben, das nur den Code enthält, den du wirklich brauchst.
Im plugins/system/visformsdatadelete/src/Helper/AddHelper.php in der Funktion getDeleteIds() kannst du sehen, wie die veralteten Datensätze ermittelt werden.

Viele Grüße und viel Erfolg,
Aicha
 

:idea: I recommend you the new and up-to-date documentation for Joomla 5:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 4.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 5:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 4.
Bitte immer nur 1 Frage pro Thema stellen :-).
Folgende Benutzer bedankten sich: buttosse

Mehr
2 Wochen 6 Tage her #11935 von buttosse
Danke für die Antwort.
In der Dokumentation zu dem Plugin steht, dass nach der Aktivierung des Plugins " ...nun sofort der erste Löschlauf ausgeführt und erstmalig der Löschlauf-Timer gesetzt.[wird] Der Timer wird auf 0:00 Uhr des Folgetags gesetzt.".   Das scheint bei mir aber nicht zu passieren, oder ich habe irgendwo noch  einen Fehler gemacht. 
Meine Frage ist: kann man den 'Vorgang' des autom. Löschens (zu Testzwecken) auch manuell auslösen? Was muss ich wie aufrufen, um den Löschvorgang zu starten?
VG, Martin

Mehr
2 Wochen 6 Tage her #11936 von Administrator AV
Hallo,

die Information wird in der #__extension tabelle im Datensatz der com_visforms gespeichert.
Im Datenbankfeld 'params'.
Als Parameter 'plg_visforms_datadelete_last_timestamp'

Gruß,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 5:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 4.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 5:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 4.
Bitte immer nur 1 Frage pro Thema stellen :-).
Folgende Benutzer bedankten sich: buttosse

Moderatoren: Administrator AVAdministrator IV
Powered by Kunena Forum