Questions & Answers

SOLVED
aschael
I'm new here

Generierungssprache in ValueEngineer

Jump to solution

Hallo liebe Experten,

wir haben fรผr unser Projekt eine eigene Eingabekomponente fรผr Daten angelegt, da das Verhalten von CMS_INPUT_DATE im Bezug auf den Umgang mit Zeitzonen fรผr uns nicht optimal war. Sie funktioniert auch schon ganz gut. Es fehlt nur noch ein Detail: Wenn man das Datum per CMS_VALUE ausgibt, sollte mรถglichst das Default-Datums- und Zeitformat der generierten Locale verwendet werden. Und das auch wenn die Eingabekomponente an sich als sprachunabhรคngig gekennzeichnet ist.

Komme ich denn innerhalb der Klassen der Eingabekomponente irgendwie an den Generierungskontext oder auf einem anderen weg an die Language/Locale? Ich konnte dazu leider in der Doku nicht schlau werden, daher wรผrde ich mich sehr freuen, wenn jemand behilflich sein kรถnnte.

Viele GrรผรŸe und Dankesehr

Anja Schรคlicke

0 Kudos
1 Solution

Accepted Solutions

Hallo Anja,

der Trick bei CMS_INPUT_DATE ist die interne Implementierung einer Sonderbehandlung von Date Smiley Wink

Im sprachunabhรคngigen Fall wird vor der Auslieferung des Werts die copy()-Methode der ValueEngineer-Instanz aufgerufen, die zur angefragten (also hier Generierungs-)Sprache gehรถrt. Eventuell hilft das weiter?

Beste GrรผรŸe

Stefan

View solution in original post

0 Kudos
4 Replies
StefanSchulz
I'm new here

Hallo,

der ValueEngineer wird fรผr jede Sprache gesondert erstellt. Die Sprache, in der ein Wert angefragt wurde, steht entsprechend รผber den ValueEngineerContext bereit.

Sollte dies nicht ausreichen, wรคren mehr Details z. B. รผber den Wertetyp eventuell hilfreich.

Beste GrรผรŸe

Stefan

0 Kudos

Hallo Stefan,

der Wertetyp ist ein Container fรผr ein Datums-Objekt. Die Funktion getLanguage im ValueEngineerContext habe ich auch schon entdeckt und ausprobiert. Die liefert mir bei einer sprachunabhรคngigen Komponente aber immer nur Deutsch, also die Mastersprache, zurรผck. Bei CMS_INPUT_DATE funktioniert das aber. Da bekomme ich fรผr ein sprachunabhรคngiges Feld auf deutschen Seiten 13.12.2017 und auf englischen Dec 13, 2017. Deshalb dachte ich es mรผsste irgendeinen Trick geben den ich nicht gefunden habe.

So habe ich die Locale bisher abgefragt:

_locale = Locale.getDefault();

if(_context.getLanguage()!= null && _context.getLanguage().getLocale() != null){

_locale = _context.getLanguage().getLocale();

}

Und die habe ich unserem Datums-Container-Objekt mitgegeben.

VG

Anja

0 Kudos

Hallo Anja,

der Trick bei CMS_INPUT_DATE ist die interne Implementierung einer Sonderbehandlung von Date Smiley Wink

Im sprachunabhรคngigen Fall wird vor der Auslieferung des Werts die copy()-Methode der ValueEngineer-Instanz aufgerufen, die zur angefragten (also hier Generierungs-)Sprache gehรถrt. Eventuell hilft das weiter?

Beste GrรผรŸe

Stefan

0 Kudos

Hallo Stefan,

ja, das hilft sehr weiter Smiley Happy. Herzlichen Dank, jetzt geht's!

Viele GrรผรŸe

Anja

0 Kudos

Type a product name