Datum Sprach-abhängig formatieren

In diesem Forum können Wünsche für die Weiterentwicklung von webEdition diskutiert werden.
Gerade bei umfangreichen Änderungen ist es sinnvoll, diese vor einem Eintrag in die Bugbase zu diskutieren. Das Ergebnis kann dann mit Verweis auf den Forumseintrag in die Bugbase eingetragen werden.
Forumsregeln
Bitte achtet hier besonders darauf, nicht abzuschweifen.
Wir werden hier verstärkt moderieren und ggf. Dinge in andere Foren (Smalltalk etc.) auslagern.
AndreasWitt

Datum Sprach-abhängig formatieren

Beitragvon AndreasWitt » Fr 20. Jan 2012, 14:20

Hallo,

ich stehe gerade vor dem Problem, dass ich ein Datumsfeld (<we:field type="date">) eines Objektes abhängig von der Sprache formatieren möchte. Dazu habe ich folgenden Code genutzt:

Code: Alles auswählen

<we:ifPageLanguage match="de_DE" doc="top">
    <we:field type="date" name="VortragsDatum" format="l, d. M Y" />
<we:else/>
    <we:field type="date" name="VortragsDatum" format="l, M d, Y" />
</we:ifPageLanguage>
Nun ist es aber so, dass der Wochentag ("l") und der Monat ("M") in der englischen Version immer noch Deutsch angezeigt wird, obwohl das Objekt (und das übergeordnete Dokument) mit der Sprache "English" ausgezeichnet wurde. Im Forum hatte ich auch folgenden Beitrag gefunden, der darauf eingeht das LOCALE richtig zu setzen: http://forum.webedition.org/viewtopic.php?f=23&t=10414.

Jedoch funktioniert die Übersetzung auch nicht, wenn ich die Ausgabe mit PHP und setlocale() + strftime() realisiere. Bei der Internationalisierung mittels LOCALE innerhalb von webEdition müsste die Übersetzung der einzelnen Datum-Formate doch automatisch erfolgen, oder?

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Datum Sprach-abhängig formatieren

Beitragvon mokraemer » Fr 20. Jan 2012, 19:50

soweit ich mich erinnere, wird das nicht einfach nur an date weitergereicht. Deshalb dürftest du das Problem hier haben.
Da müßte man halt was umschreiben - v.a. müßte das JS-Datum angepaßt werden.
webEdition-Kern-Entwickler

AndreasWitt

Re: Datum Sprach-abhängig formatieren

Beitragvon AndreasWitt » Fr 20. Jan 2012, 20:04

... wäre dann wohl ein Feature-Request?

Ich denke, dass das in Hinblick auf die Unterstützung von Mehrsprachigkeit und Internationalisierung angepasst werden sollte. Soll ich dazu ein Ticket eröffnen?

Grüße, Andreas

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Datum Sprach-abhängig formatieren

Beitragvon mokraemer » Fr 20. Jan 2012, 22:04

kannst du machen - muß mal schauen, wo wir überhaupt die Namen der Monate/Wochentage in beliebiger Sprache herbekommen - denn die installierte Sprache kennt die ja nicht.

Ok, könnte man aus dem Zend-FW bekommen.
webEdition-Kern-Entwickler

ThomasGoebe

Re: Datum Sprach-abhängig formatieren

Beitragvon ThomasGoebe » Sa 21. Jan 2012, 03:11

Ja, bitte FR machen, so dass we:field type="date", we:date, we:var type="date" etc. ein language Attribut bekommen.

Dort sollte dann auch top,self etc. klappen wie bei anderen Angaben der Sprache auch.

Sinnvoll wäre natürlich, wenn die Standardeinstellung immer top, also die Sprache des Dokuments nutzt.

Allerdings das dann nur mit Schalter in den Einstellungen, der bei neuen Installationen dann schon auf das neue Verhalten gesetzt wird.

Solche Schalter könten wir dann in einer späteren Version mal entfernen. (nach langer Ankündigungszeit). So was wie der wE-Kompatibilitätsmodus...

AndreasWitt

Re: Datum Sprach-abhängig formatieren

Beitragvon AndreasWitt » Sa 21. Jan 2012, 15:36


mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Datum Sprach-abhängig formatieren

Beitragvon mokraemer » Sa 21. Jan 2012, 17:02

ich glaube das mit dem Schalter ist hier übertrieben - einfach aus dem Grund, weil derzeit immer Deutsch angezeigt wird und auch die Spracheinstellungen noch nicht so alt sind.
Die wenigsten zeigen Wochentage etc. an - und selbst wenn, sind sie doch froh, wenn es endlich genau wie die Seitensprache angezeigt wird.
webEdition-Kern-Entwickler

ThomasGoebe

Re: Datum Sprach-abhängig formatieren

Beitragvon ThomasGoebe » So 22. Jan 2012, 12:34

Hallo Marc,

ich halte das nicht für übertrieben.

Denn ja: es wird im Moment immer Deutsch angezeigt (es sei denn, ich ändere selbt die Locale Einstellung vorher). Also: auch wenn meine Seite en_GB hat, wird eventuell in einem Kalender, bei einer Newsanzeige etc. deutsch angezeigt. Und nach dem Update ist das dann englisch.

Ich bleibe bei meiner Haltung: wenn sich das Verhalten eines Tags ändert, dürfen bestehende Seiten dadurch nicht unmittelbar beeinflust werden. Es muss eine Übergangsfrist geben.

Gerade letzte Woche habe ich da wieder einiges mitbekommen:
Update von einer 5er:
- register klappt nicht (register=true muss eingestellt werden)
- selectfelder im registrierungsformular gehen nicht (plötzlich wird der erste Eintrag nicht mehr akzeptiert)
- direkte Tag Aufrufe in PHP gehen nicht (we_tag_ klappt nicht)

Da sitzt dann jemand und verzweifelt, weil man nicht 12 Versionshistorien sehen kann und immer weiss, was in einem umfangreichen Projekt zum Einsatz kommt. Und bis auf den letzten Punkt wurden nur webEdition Standards genutzt. Nichts eigenes.

Immer daran denke, dass es auch wE-User gibt, die Dinge, die möglich sind, auch nutzen.

Die einzige Möglichkeit in dem Fall date ohne einen Kompatibilitätsschalter wäre, es nicht von der Seitensprache abhängig zu machen, sondern nur den Parameter einzuführen. Als default greift dann die bestehende Einstellung. Aber ist das sinnvoll?

Und bevor nur wir beide hier diskutieren, schiebe ich das mal in das Feature Request Forum und bitte auch andere um Meinungen.
Können wir das Verhalten von date-Tags einfach ändern oder braucht es einen Kompatibilitätsschalter?

Gruß
Thomas Göbe

AndreasWitt

Re: Datum Sprach-abhängig formatieren

Beitragvon AndreasWitt » So 22. Jan 2012, 13:13

... dann werd ich mich mal an der Diskussion beteiligen:

Logisch betrachtet würde ich den Ansatz von Marc unterstützen, denn für mich als Entwickler / Nutzer des CMS gehe ich davon aus, dass die Datum-Formatierungen von <we:field|date|var format="l, d M, Y"/> je nach Sprache des Dokumentes/Objektes automatisch übersetzt wird. Welche Sinn hätte es denn, wenn ich auf einer englischen Seite den Wochentag und den Monatsnamen in Deutsch ausgeben würde?

Die Ergänzung eines Schalters auf target="top" (Sprache des Root-Dokumentes) oder target="self" (Sprache des aktuellen Objektes/Dokumentes) würde ich auch noch für sinnvoll erachten, da dies bereits bei anderen Tags zum Einsatz kommt und somit inkludierte Dokumente/Objekte unabhängig vom Root-Dokument eine eigenständige Sprachausgabe hätten.

ThomasGoebe

Re: Datum Sprach-abhängig formatieren

Beitragvon ThomasGoebe » So 22. Jan 2012, 13:24

Hallo Andreas,

danke für den Beitrag. Da sind wir uns ja alle einig:
date Tags sollen per Default die Sprache des Dokuments/Objekts nutzen, in dem sie genutzt werden (was ist in listviews? greift bei object-listviews per Default die Sprache des Dokuments, also top?) und es sollte auf jeden Fall eine Möglichkeit geben, pro Tag eine andere Sprache zu wählen. Top und self soll es dabei auch geben (in listviews: ist self dann also die Einstellung des listview Eintrags?)

Die Frage ist: braucht es eine Einstellung in webEdition, die dafür sorgt, dass das "alte" Verhalten, also ein von der Sprache des Dokuments unabhängiges Format der date-Tags, aktiv ist?

Denn im Moment wird ja immer deutsch genommen, gibt es also eine signifikante Menge an Installationen, die sich darauf verlassen, dass es immer eine deutsche Datumsausgabe gibt und dann was auch immer damit machen?
Gibt es also den Bedarf, genau wie bei der Umstellung des Tag-Parsers (es werden nicht mehr alle Tags direkt geladen) eine Konfigurationsoption dafür zu erstellen?

Ich kann mir dazu Beispiele vorstellen.
Welche Sinn hätte es denn, wenn ich auf einer englischen Seite den Wochentag und den Monatsnamen in Deutsch ausgeben würde?
Nur, weil Du (oder auch wir) den Sinn nicht sehen, heisst das nicht, dass viele andere ihn nicht vielleicht doch sehen ;-)

In meinen Augen ist es für wE immens wichtig, über den Tellerrand hinaus zu schauen. Wir entwickeln hier ein System weiter, welches auf tausenden Installationen läuft und damit mit tausend Ansätzen und Ideen betrieben wird... Durchaus eine Komplikation.

Gruß
Thomas Göbe

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Datum Sprach-abhängig formatieren

Beitragvon mokraemer » So 22. Jan 2012, 17:16

Die Ausgabe hängt von der Serverconfig und der installierten Backendsprache ab. Und ob man js=true oder nicht hat. Denn in dem einen Fall werden die übergebene Formatierung von php und im anderen von WE gemacht.

Mir geht es nicht um ein lang=top oder so. Sondern nur um den globalen Schalter. In den aktuellen Settings blickt doch keiner mehr durch! Und einige solcher Kompatibilitätsschalter führen wir auch seit Version 2 schon mit.

Zum Thema update - ja, das ist eben so; die 5er ist jetzt >3 Jahre alt - wir hatten mal über Kompatibilität von 2-3 Sub-Versionen gesprochen; die sind da dann auch schon lange raus. Und auch zu living-e Zeiten waren nicht alle Updates immer komplett kompatibel - gerade die Umstellung von Version 5 auf 6.0 ist ja noch von denen gemacht worden. In sofern sind da schon Probleme programmiert, die nun schon lange so sind.
Wenn man sich anschaut was in der 6er passiert ist, müßte die Version nach living-e eh schon bei 7 oder 8 sein.

Es verbietet aber auch keiner sich auf eine Liste mal die kritischen Dinge die zw. den Versionen geändert haben zu notieren und diese Liste dann vor einem Update zu prüfen. Das kann in einem Wiki, im Forum oder auf der Org passieren.

Die Punkte:
- register: gibt es ein Kompatibilitätsflag
- selectfelder: höre ich das erste mal von
- direkte Tag Aufrufe in PHP gehen nicht: gibt es auch ein Kompatibilitätsflag bis 6.3

Die Umstellung ifRegisteredUser war für mich viel gravierender, v.a. weil sie nur auf einem Übersetzungsfehler beruht; nun aber ein gänzlich anderes Verhalten hat (#4727).

Fakt ist aber auch, daß wir nicht für alles irgendwelche Flags machen können - zum einen ist nicht immer klar das sich was ändert (wer testet? außer Tobi und mir hat bisher auch kaum einer die 6.3 getestet, obwohl die Kernkomponenten seit der Konferenz fertig sind), zum anderen sind Sicherheitslücken immer zu schließen (deshalb hätte es nie ein Flag für register geben dürfen) - durch die Lücke war es echt einfach sich in abgesicherte Bereiche reinzuhacken.
webEdition-Kern-Entwickler

Benutzeravatar
Paladin
Senior Member
Beiträge: 363
Registriert: Mi 10. Feb 2010, 15:11
Kontaktdaten:

Re: Datum Sprach-abhängig formatieren

Beitragvon Paladin » Mo 23. Jan 2012, 21:02

Schon mal versucht, im Template explizit einfach nur Zend_Locale nochmal manuell "anzuschubsen"?
Ich habe ein Projekt, bei dem das dann funktioniert, allerdings wird da sehr viel via Zend_Translate gemacht und da muss halt das Zend_Locale vorher auf die Sprache des Dokuments geschaltet werden. Aber dann läuft alles ;)

AndreasWitt

Re: Datum Sprach-abhängig formatieren

Beitragvon AndreasWitt » Di 25. Sep 2012, 00:39

... dieser FR wurde bereits in webEdition 6.2.7 umgesetzt: http://qa.webedition.org/tracker/view.php?id=5938


Zurück zu „webEdition Feature Requests“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste