Zikula Core 3 bietet Mittel für dynamische Formularelemente

in  Zikula Apps , ,

Zikula Core 3 bietet Mittel für dynamische Formularelemente

Das Profile-Modul von Zikula bietet seit langer Zeit die Möglichkeit, die einzelnen Angaben der Benutzerprofile flexibel zu verändern und nach Belieben zu konfigurieren. Diese Funktionalität wurde im Laufe der letzten Jahre mehrfach umgebaut und basiert mittlerweile auf Symfony Forms. Diese Implementierung ist relativ smart gelöst: man wählt zunächst einen Feldtyp aus und anschließend werden via Ajax automatisch weitere Felder zur Spezifikation der dazugehörigen, möglichen Feldoptionen geladen.

Etwas abstrahiert betrachtet lassen sich hiermit also Meta-Formulare zur Definition von Formularen definieren. Nun ist dies ja nicht nur für Benutzerprofile, sondern für zahlreiche weitere Anwendungen interessant: beispielsweise könnte man Kontaktformulare dynamisch zusammenbauen; das selbe gilt für jegliche Art von Umfragen. Oder man möchte einfach zu einem beliebigen Datenobjekt dynamisch weitere Angaben dokumentieren - damit wäre solch eine Funktion perspektivisch auch für die generischen Attribute, welche sich für diverse Entitäten nutzen lassen, interessant sein.

Aus diesem Grund haben wir die Funktionalität aus Profile herausgeholt, generalisiert und in den Zikula Core, genauer in das FormExtensionsBundle, eingepflegt. Damit steht sie nun für weitere Module zur Verfügung. Konkret werden die folgenden Helferlein angeboten:

  • Ein Formulartyp zur Auswahl von Feldtyp und dazugehörigen Feldoptionen.
  • Ein Event, mit dem die Liste der Feldtypen dynamisch verändert werden kann. Zum Beispiel gibt es im Benutzerprofil einen speziellen Avatar-Typ, welcher vom Profile-Modul hinzugefügt wird.
  • Ein Interface für einen Container mit dynamischen Feldern.
  • Ein Interface für einzelne dynamische Felder.
  • Ein Formulartyp zum Einbinden der dynamischen Felder eines gegebenen Containers in ein Formular.

Weitere Details zur Implementierung lassen sich in der Dokumentation des Features nachlesen.

Weitere Beiträge in Kategorie Zikula Apps

Zikula Core Dokumentation in neuem Gewand
- Schon seit einiger Zeit werden im GitHub-Repository des Zikula Core die Dinge dokumentiert, die zusätzlich zu den Handbüchern von Symfony, Doctrine, Twig, Bootstrap usw. zu beachten sind. Nun wurde …
Weitere neue Features in Zikula Core 3
- Nachdem wir bereits in einigen Artikeln zu Zikula 3 die Änderungen unter der Haube, umfangreiche Modernisierungen, Möglichkeiten für dynamische Formulare und Neuerungen rund um Übersetzungen …
Zikula 3 bringt zahlreiche Neuerungen rund um Übersetzungen
- Nachdem zwischen den Jahren der komplette Unterbau von Zikula 3 auf Stand gebracht worden ist, hat sich der nächste Sprint dem Übersetzungssystem gewidmet. In diesem Beitrag wird kurz dargestellt, …
Zikula startet modernisiert ins neue Jahr
- Im Rahmen des letzten Sprints wurde der Unterbau von Zikula 3 auf den neuesten technischen Stand gebracht. Im Folgenden wird kurz zusammengefasst, was hierbei genau passiert ist. Twig 3 Als erstes …
Zikula Benutzer und Gruppen in DokuWiki verwenden
- In Zikula lassen sich mit Hilfe unterschiedlicher Authentifizierungsmethoden Nutzer auf verschiedenen Quellen einbinden und mischen. So kann man sich beispielsweise mit dem OAuth-Modul via Facebook, …