Hallo,

problematisch sind Select-Einträge mit einem "&" drin. Formhandler macht ein 
htmlSpecialChars() auf alle übertragenen Werte. "A & B" wird also zu "A & 
B". Der gesuchte Marker ist demnach ###selected_toerntyp_A & B### und der 
wird nicht gefunden.

Wird das Ampersand im translation file nicht maskiert angegegben (&) führt 
das schon zu einem Fehler. Wird das Ampersand aber maskiert, tritt der Fehler 
wie hier im Posting beschrieben auf.

Dazu hat Reinhard Führicht jetzt im Bugtracker ein Ticket aufgemacht: Problem 
with selected markers using values from translation file - 
http://forge.typo3.org/issues/44900. Der Patch 44900.patch vom 29.01.2013 
funktioniert aber nur für Einträge, die im translation file keine HTML-Tags wie 
z.B. <b>...</b> oder <br /> beinhalten. Deshalb will Reinhard noch nach einer 
anderen Lösung suchen.

Folgenden Workaround von Reinhard habe ich angewendet - und er funktioniert.
Für alle Select-Einträge die im Text ein maskiertes Zeichen enthalten, und die 
über das translation file übersetzt werden wird ein eigener Marker definiert 
(im nachfolgenden Beispiel sind dies "toerntyp2" und "toerntyp3"), der dann per 
TypoScript gesetzt werden kann.

[HTML]
<select id="toerntyp" class="select" name="###formValuesPrefix###[toerntyp]">
     <option selected="selected" value="nicht festgelegt">nicht 
festgelegt</option>
     <option value="###LLL:toerntyp.1###" 
###selected_toerntyp_###LLL:toerntyp.1######>###LLL:toerntyp.1###</option>
     <option value="###toerntyp2Translation###" 
###selected_toerntyp_###toerntyp2Translation######>toerntyp2Translation###</option>
     <option value="###toerntyp3Translation###" 
###selected_toerntyp_###toerntyp3Translation######>toerntyp3Translation###</option>
     <option value="###LLL:toerntyp.4###" 
###selected_toerntyp_###LLL:toerntyp.4######>###LLL:toerntyp.4###</option>
</select>
[/HTML]

[TypoScript]
markers {
     toerntyp2Translation = TEXT
     toerntyp2Translation {
         data = 
LLL:{$formhandlerExamples.basic.contact-form.rootPath}/lang/lang.xml:toerntyp.2
         htmlSpecialChars = 1
     }
     toerntyp3Translation = TEXT
     toerntyp3Translation {
         data = 
LLL:{$formhandlerExamples.basic.contact-form.rootPath}/lang/lang.xml:toerntyp.3
         htmlSpecialChars = 1
     }
}
[/TypoScript]


An diese Stelle nochmals vielen Dank an Reinhard, für seine Hilfe und 
Unterstützung! :-)

Gruß, Johannes.


> JCL - Johannes C. Laxander
> Gesendet: Freitag, 25. Januar 2013 10:33
> 
> 
> Hallo Reinhard, 
> 
> Die Übersetzung wird schon gefunden, denn das 
> DropDown-Listenfeld wird mit allen Einträgen in der 
> jeweiligen Sprache korrekt angezeigt. Hier ein Eintrag in der 
> entsprechenden lang.xml für default, de und nl:
> 
> <label index="toerntyp.0">nicht festgelegt</label>
> 
> Hier der generierte Quellcode:
> 
> <label for="toerntyp">Törn-Typ:</label>
> <select id="toerntyp" name="bookingrequest[toerntyp]" 
> class="select"> <option value="nicht festgelegt" 
> selected="selected">nicht festgelegt</option> <option 
> value="Option 1">Option 1</option> <option value="Option 
> 2">Option 2</option> <option value="Option 3">Option 
> 3</option> </select>
> 
> Wenn ich dann "Option 2" auswähle und das Formular hat einen 
> Fehler, wird wieder "nicht festgelegt" angezeigt. Ich hab dir 
> mal den Link auf die Seite an deine private Email geschickt.
> 
> Gruß, Johannes.
> 
> > > <!-- ###master_toerntyp### -->
> > > ###error_toerntyp###
> > > <div class="ym-fbox-select ###is_error_toerntyp###"> <label 
> > > for="toerntyp">###LLL:toerntyp###</label>
> > > <select id="toerntyp" name="###formValuesPrefix###[toerntyp]" 
> > > class="select"> <option value="###LLL:toerntyp.0###" 
> > > 
> > 
> ###selected_toerntyp_###LLL:toerntyp.0######>###LLL:toerntyp.0###</opt
> > > ion> <option value="###LLL:toerntyp.1###" 
> > > 
> > 
> ###selected_toerntyp_###LLL:toerntyp.1######>###LLL:toerntyp.1###</opt
> > > ion> <option value="###LLL:toerntyp.2###" 
> > > 
> > 
> ###selected_toerntyp_###LLL:toerntyp.2######>###LLL:toerntyp.2###</opt
> > > ion>
> > > </select>
> > > ###validate_toerntyp###
> > > </div>
> > > <!-- ###master_toerntyp### -->
> > >
> > >
> > > Wenn ich im Formular nun den zweiten oder dritten Eintrag
> > auswähle und in der Validierung tritt ein Fehler auf, ist 
> die Auswahl 
> > verloren und es wird der erste Eintrag angezeigt.
> > Ohne Fehler wird die Auswahl in die E-Mail übernommen.
> > >
> > > Ist in meiner Definition noch ein Fehler?
> > >
> > > Gruß, Johannes.
> > >
> > 
> > ich habe das ausprobiert in einem Testformular.
> > 
> > Bei mir funktioniert alles wunderbar.
> > Kann es sein, dass die Übersetzungen für toerntyp.0 usw 
> nicht gefunden 
> > werden? Wie sieht der generierte Quellcode aus?
> > 
> > Viele Grüße,
> > Reinhard

_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an