Joomla 5 Notice

We are pleased to announce that as of October 14, 2025, all of our Joomla extensions are compatible with Joomla 6.

For all who are still updateing from Joomla 3 to Joomla 4: Joomla 4 Migration instructions are available here:

There is a separate Documentation for Visforms for Joomla 4 and for Visforms for Joomla 5 and 6!

Forum

Visforms Subscription user can ask questions in our forum. Please log in with the relevant user first.
Everybody can access the forum for reading.

Please only ask 1 question per topic.

Important information for almost every question:
V1: Which Visforms version is running?
V2: Which Joomla version is running?
V3: Which PHP version is running?

automatisches Löschen vfautodeletedata visformsdatadelete

More
1 day 16 hours ago #11933 by 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

 

More
1 day 14 hours ago #11934 by Administrator AV
Replied by Administrator AV on topic automatisches Löschen vfautodeletedata visformsdatadelete
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 :-).
The following user(s) said Thank You: buttosse

More
19 hours 49 minutes ago #11935 by 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

More
17 hours 9 minutes ago #11936 by Administrator AV
Replied by Administrator AV on topic automatisches Löschen vfautodeletedata visformsdatadelete
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 :-).
The following user(s) said Thank You: buttosse

Moderators: Administrator AVAdministrator IV
Powered by Kunena Forum