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?

Felder die mit URL-Parametern gefüllt wurden, im Formular auf "ReadOnly" setzen

More
3 months 2 weeks ago #10609 by MaliRaj
Hallo Aicha, Hallo Ingmar,
Ich möchte Felder, die per URL-Parameter vorausgefüllt wurden, vor Änderungen (nur in der Formularansicht) schützen. An welcher Stelle, in welchem Event in der Formularverarbeitung ist das am besten aufgehoben? 

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

More
3 months 2 weeks ago #10611 by Administrator AV
Hallo Heinz,
das gehört ins VisfieldBeforeCreateEvent

Es gibt Feldtypen, für die die HTML Spezifikation nicht vorsieht, dass man ein Readonly setzen kann (z.B. Checkboxen, Listboxen...)
Diese Feldtypen kennen kein Attribute 'Readonly'.
Für einen Entwickler hat das gute, nachvollziehbare Gründe.
Für Anwender ist das oft nicht nachvollziehbar.

Deshalbe haben wir in Visforms für alle Feldtypen, die nativ kein Readonly unterstützen, Code implementiert, der im Browser dasselbe Verhalten erzeugt wie ein echtes Readonly.
In der Felddefininition geschieht dies einfach mittels der Eigenschaft attribute_readonly = 'readonly'
Die du entsprechend in deinem Eventhandler setzen kannst.

Das setzen des Wertes über URL Parameter ist auch mit readonly möglich.

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
3 months 2 weeks ago #10613 by MaliRaj
Das funktioniert eigentlich mit allen Feldern (radio,selectsql,listboxsql,text) richtig gut. Die Felder mit übermittelten URL-Parametern lassen sich (wie gewünscht) entweder gar nicht erst ändern oder springen im Fall von Listboxen wieder auf den "festgelegten URL-Wert" zurück. Selbst wenn es sich um Bedingungsfelder (Trigger) handelt. Bei der 'normalen' Listbox (select) allerdings, wenn das Feld auch gleichzeitig ein Bedingungsfeld für andere Felder ist, greift das readonly (bei mir) nicht. Da kann ich die Auswahl trotzdem ändern, so dass sich die abhängigen Felder entsprechend ändern, was ja nicht gewollt ist. Übermittelt wird allerdings beim Bedingungsfeld wieder der "richtige" readonly-Wert (aus URL-Parameter). Das passt irgendwie nicht zusammen. Dafür habe ich keine Erklärung.

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

More
3 months 2 weeks ago #10614 by Administrator AV
Hallo Heinz,
was ist das für eine Visforms Version?
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 :-).

More
3 months 2 weeks ago - 3 months 2 weeks ago #10617 by MaliRaj
Visforms Version 5.1.1, Subscription Version 5.1.1, die aktuell installierte Joomla! Version ist: ‎5.1.2

und ein Nachtrag:
Entgegen meiner obigen Aussage betrifft es auch selectsql, nicht nur select. Die Option 'readonly' scheint bei Listboxen grundsätzlich nicht richtig zu funktionieren. Auch wenn ich gar kein custom-Plugin nutze, sondern in den Feldeigenschaften das Häkchen bei 'readonly' setze, verhält es sich so:

Beispiel:
Listbox "Zahl" enthält 5 Optionen: 'eins', 'zwei', 'drei', 'vier', 'fuenf'; via URL-Parmeter wird 'drei' initialisiert. Readonly gesetzt
Weitere Felder mit bedingter Anzeige bei "Zahl || eins, .... fuenf", die ja nach Auswahl von "Zahl" ein- oder ausgeblendet werden:
- Listbox zeigt Wert 'drei' an, das Feld mit der bedingten Anzeige "Zahl || drei" wird angezeigt
- Listbox kann gescrollt und neu ausgewählt werden, z.B. 'vier' (nicht gewünscht)
- die Anzeige springt zurück auf 'drei' (gewünscht)
- die Felder mit bedingter Anzeige "Zahl || vier" werden angezeigt (nicht gewollt)
- die Felder mit bedingter Anzeige "Zahl || drei" werden ausgeblendet (nicht gewollt)
Hoffe, das Beispiel verdeutlicht das Problem noch etwas besser (auch wenn ich denke, dass es nun mit dem ursprünglichen Thema nur noch entfernt zu tun hat)

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

More
3 months 2 weeks ago #10624 by Administrator AV
Hallo Heinz,
da Visforms 5.1.1 die Beta ist, habe ich extra noch einmal getestet, ob da evtl. im Code ein Bug ist.

Ich habe folgenden Usecase aufgesetzt.

- Formular hat ein Listboxfeld mit mehreren Werten.
- In der Feldkonfiguration haben ich Readonly gesetzt.
- In der Feldkonfiguration 'Url-Parameter erlauben' gesetzt
- Formular hat ein textfeld, das nur angezeigt wird, wenn die Listbox wert 1 gewählt hat.
- Formular aufrufen mit URL Parameter, der die Listbox auf wert 2 setzt.

Ergebnis:
Wert der Listbox lässt sich nicht verändern, bzw. springt immer sofort zurück.
Das abhängig Feld ist immer versteckt.

Also das erwartete Verhalten.
D.h. ich gehe davon aus, dass das Problem durch deinen individuellen Code kommt.

Das Feature, dass Listboxen 'Pseudo-Readonly' gemacht werden, ist in der visforms.js (media/com_visforms/js) implementiert.
Der Code kommt nach dem Triggern des 'visfieldInitialized' Event.
Es wird ein 'change' Handler implementiert.
Schau dir den Code einfach einmal an
Evtl. kannst du ja erkenne, warum er in deinem Kontext nicht ganz das gewünschte Ergebenis liefert und deinen Code entsprechend anpassen.

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

Moderators: Administrator AVAdministrator IV
Powered by Kunena Forum