Joomla 5 Notice

We are pleased to announce that as of January 29, 2024, all of our Joomla extensions are compatible with Joomla 5.

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

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

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?

Formular-Ansicht: Return-Link für manuelle Formularaufrufe

More
6 months 2 weeks ago - 6 months 2 weeks ago #10397 by MaliRaj
Hallo fleißiges Visforms-Team,
da ihr immer wieder neue Funktionen bereitstellt, übernehme ich vieles davon in meine Scripte. Gerade habe ich die Return-Links für meine manuellen Edit-Ansichten eingearbeitet/aktualisiert, was super funktioniert. So kommt der User genau an die Stelle zurück, von der aus er das Edit gestartet hat.
Meine Frage:
Lässt sich der Return-Parameter auch für die Formulareingabe nutzen?
In der Formularkonfiguration kann ich keine feste Weiterleitungs-URL eintragen, da ich das Formular von unterschiedlichen Seiten manuell und mit URL-Parametern aufrufe. Wenn ich da nach obiger Methode einen '&return=' -Wert anhänge, wird das ja wohl als Feldname = 'RETURN' gewertet, oder? Das hat zumindest im Test nicht so einfach funktioniert. Wie ist da die beste Vorgehensweise?

Nachtrag Formularkonfiguration:
individuelles Redirect erlauben = ja
auf vorherige Seite zurückspringen = ja/nein (ja = ruft das Formular erneut mit den gleichen URL-Parametern auf / nein = ruft die Startseite auf)

Freundliche Grüße aus PM
Heinz
(Joomla 5.1.2 / Visforms+Subscription 5.12 / PHP 8.2)
Last edit: 6 months 2 weeks ago by MaliRaj.

More
6 months 2 weeks ago #10402 by Administrator AV
Hallo Heinz,
schön dass du unsere neuen Feature nützlich findest und bei dir einbaust!
Zu deiner Anfrage:

In den Edit Ansichten gibt es es nur eine feste Weiterleitungs-URL nach erfolgreichem Submit.
Das ist immer die URL von der Listenansicht von der aus das Edit gestartet wurde.
Das Redirect wird hier also nicht bestimmt durch eine URL die jemand manuell oder konfigurativ hinterlegt, sondern ergibt sich aus dem Weg, den der Benutzer gegangen ist.
Diese URL wird in Visforms immer vom Code ermittelt und muss in sinnvoller Weise an die Edit View übertragen werden.
Das geschah schon immer durch einen URL-Parameter.
Die Tatsache, das der Return-Link immer automatisch festgelegt ist und nicht konfiguriert werden kann, ermöglicht eben auch einfach, an dieser Stelle einzugreifen.

In der Formularansicht ist das ganz anders.
Es gibt zahlreichen Optionen in der Konfiguration, um festzulegen wann in welchem Fall wohin weitergeleitet wird.
Diese Optionen werden als Einstellungen des Formulars gespeichert und nach dem Absenden des Formulars vom Visforms Code ausgewertet.
Hier läuft umfangreicher Code ab, der ermittelt wohin weitergeleitet wird.
Ein Parameter return in der URL wird nicht unterstützt.
Es ist nicht vorgesehen die Redirect URL über einen URL-Parameter zusetzen.

Wenn du das Formular über einen Menüeintrag vom Typ Visforms Formular anzeigst, dann kannst du im Prinzip über einen URL Parameter ‘creturn’ eine individuellen Wert setzen, der dann auch mit dem Post des Formulars übertragen wird.
Dieser Parameter wird von Visforms aber nicht direkt selbst ausgewertet.

Man muss in einem eigenen Plugin Code schreiben, der diesen Parameter auswertet und dann die Redirect URL für das Formular entsprechend setzt.
Das entsprechende Event ist 'onVisformsBeforeSuccessAction'.
Darin wird das Formular übergeben und kann modifiziert werden.
An dieser Stelle kann man alle Formularkonfigurationsparameter die das Redirect steuern, umstellen.
Um die Logik, dass hinterher alles stimmt, muss man sich selbst kümmern.
Da auch das Erstellen eines creturn URL Parameters mit dem entsprechenden korrekten URL Wert (entsprechend verschlüsselt) an sich schon aufwendig ist und die Programmierung erfordert, ist es naheliegend, dass dann auch die Auswertung in Custom Code erfolgt.

Mit Custom Code, der auf das 'onVisformsBeforeSuccessAction' reagiert, kannst du immer ein eigenes Redirect setzen.

Die Formular Konfigurations-Option 'Individuelles Redirect erlauben' wird nur verwendet, wenn das Formular per Content Plugin Form View eingebunden ist.
Dann kannst man in jedem Beitrag in dem man das Formular per Plugin einbindet im Plugin String eine eigene Redirect URL hinterlegen und diese wird dann als Wert in der Formularkonfigurationsoption 'Redirect URL' gesetzt.
Das ist das einzige, was dieser Parameter tut.
Alle anderen Redirect Optionen werden weiterhin entsprechend ihren Einstellung in der Formularkonfiguration verwendet.

Ich hoffe die Erläuterung der Hintergründe hilft dir, eine passende Lösung zu finden.

Herzliche Grüße,
Aicha

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

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
The following user(s) said Thank You: MaliRaj

More
6 months 2 weeks ago #10407 by MaliRaj
Vielen Dank für die aufschlussreichen und verständlichen Hintergrundinformationen. Damit konnte ich alles wie gewünscht umsetzen. Beim Aufruf des Formulars hänge ich einen entsprechend base64-codierten creturn-Parameter an die URL. Den hole ich mir in deinem vorgeschlagenen Event, decodiere ihn wieder und setze damit den redirecturl-Parameter. Funktioniert klasse. Auch dabei hat XDEBUG wertvolle Hilfe geleistet.

Freundliche Grüße aus PM
Heinz
(Joomla 5.1.2 / Visforms+Subscription 5.12 / PHP 8.2)

Moderators: Administrator AVAdministrator IV
Powered by Kunena Forum