TYPO3 8 LTS: Form nutzen

Es war ein langwieriges Projekt und dabei sollte es doch so viel einfacher werden. Seit TYPO3 8 ist die Extension tx_form in den Core aufgenommen worden und mit einer schicken GUI im Backend sollte diese auch wirklich einfach zu bedienen sein.

Ausgabe im Frontend
KORREKT: Sie ist einfach zu bedienen. Formularfelder anlegen und definieren ist ein Kinderspiel und im Frontend sieht das Formular sogar sofort echt gut aus. Ähnlich ist es mit den sogenannten finishern. Diese steuern die Weitergabe der Daten nach dem Ausfüllen und Abschicken des Formulars. Zum Beispiel sollte bei jedem einfach Kontaktformular ja der Seitenbetreiber per Mail informiert werden, der Nutzer sollte auf eine Bestätigungsseite weiter geleitet werden und vllt. sogar auch eine Mail mit den eingebenen Daten erhalten.

Kein Ding: Finisher auswählen und in die Felder Betreff, Absender- und Empfängerdaten eintragen und fertig. Naja fast... jetzt kommt nämlich der schwierige Teil. Denn meisten reicht es nicht, einfach eine Mail mit einer Tabelle zu erhalten, wo die Labels eingetragen sind, sowie die Nutzereingaben.

E-Mail-Template: Html.hmtl
Ich wollte z.B. eine persönliche Begrüßung in der Mail haben und die Daten sollten nicht in einer Tabelle runtergelistet werden. Zumal auch die Labels von statischen Hinweis- oder Informationstexten eingetragen wurden, für die keine Nutzereingaben möglich sind.
Hier wäre es schön, wenn die Texte entweder vollständig enthalten sind oder sie Angabe überhaupt nicht erscheint. Und dann soll der Seitenbetreiber natürlich nicht mit dem Nutzernamen begrüßt werden :-D Also ein Haufen Anforderungen, die nicht mit einem Mail-Template gelöst werden können.

Über die Labels konnte ich nun die Ausgabe steuern und es hat lief auch erstmal rund, bis ich beim ersten Test feststellen durfte, dass ich mit dem Label "Nachname" zwei Felder habe, deren Userinput hintereinander ausgegeben wird.

Ansicht im Backend


Auf der Suche nach einer Lösung habe ich mich bei vielen Community-Mitglieder gefragt. Alle sind so wahnsinnig hilfsbereit und auch wenn sie nicht selbst helfen konnten, hatten sie doch immer mindestens einen Tipp, an wen ich mich wenden könnte und wer evtl. doch noch helfen könnte. An dieser Stelle ein riesen Dank an alle so bereitwilligen Helfer!

Leider konnte das Problem bisher dennoch nicht gelöst werden. Wünschenswert wäre eine Möglichkeit, die Ausgabe statt über das Label über die field-ID zu steuern. Wer also in Zukunft hier mal DIE Lösung findet oder entwickelt: BITTE MELDE DICH :-)

[EDIT 2017-12-06]: Das Problem ist gelöst!! 
mit folgendem Snippet ist es möglich, das Formularfeld auszulesen, OHNE Label zu nutzen:
<formvh:renderAllFormValues renderable="{form.formDefinition}" as="formValue">   <f:if condition="{formValue.element.identifier} == 'text-1'">      {formValue.processedValue}
   </f:if></formvh:renderAllFormValues> 

Wichtig ist dabei, dass <formvh:renderAllFormValues ...></formvh:renderAllFormValues> nicht ineinander verschachtelt wird, damit wir keine Endlosschleife bekommen.
DANKE an alle, die mit überlegt haben und somit eine große Hilfe waren!

Kommentare

Beliebte Posts aus diesem Blog

Basteln mit Honig

Durchbruch und Erleichterung