core icon indicating copy to clipboard operation
core copied to clipboard

Auswahl einer Timezone pro Seitenbaum

Open basistom opened this issue 11 years ago • 18 comments

Es wäre hilfreich, wenn pro Seitenbaum eine Timezone ausgewählt werden kann (ähnlich der Globalen Einstellung) um in länderspezifischen Seiten besser arbeiten zu können.

Beispiel: Die Von-Bis-Anzeige eines Elementes könnte so länderübergreifend verwendet werden.

basistom avatar Nov 13 '13 14:11 basistom

Nach meinem Wissen bezieht sich die Timezone-Einstellung auf die Einstellung deines Servers und sollte damit übereinstimmen. Kann also nicht pro Root-Seite anders sein.

aschempp avatar Nov 13 '13 14:11 aschempp

Genau - so wie ich es sehe, stelle ich in den Globalen Einstellungen ein, welches Zeitzone auf dem Server läuft.

Mein Anliegen bezieht sich auf folgendes: In einem Land mit einer anderen Zeitzone als die des Servers, muss ein Redakteur rumrechnen wenn er den Veröffentlichungs-Zeitraum eines Elementes einstellt. Wenn er ein Datum für den Start auswählt, bezieht sich der Zeitpunkt nicht auf seine Ortszeit sondern auf die des Servers.

Ideal wäre es deshalb, wenn ich einem Land eine Zeitzone zuordnen kann und dann für die Veröffentlichung die Zeiten umgerechnet würden.

basistom avatar Nov 13 '13 15:11 basistom

Und inwiefern würde es da helfen, wenn im Seitenbaum ein andere Zeitzone eingestellt wäre? Wenn müsste das ja dann jeder Benutzer in seinem Profil anpassen.

leofeyer avatar Dec 05 '13 19:12 leofeyer

Es ist ja nicht an den Redakteur gebunden, sondern an das jeweilige Land. Nochmal ein Beispiel, um es zu verdeutlichen: Ich betreibe eine Website für Deutschland und die USA, in der ich Veranstaltungen mit Startzeit anlege. Es gibt einen Seitenbaum für Deutschland und einen für die USA. In Deutschland lege ich eine Veranstaltung am 24.12.2013 um 17 Uhr an und in den USA soll sie ebenfalls am 24.12.2013 um 17 Uhr beginnen, aber natürlich amerikanischer Zeit (Ostküste ;-) ) ... jetzt kann ich ein bisschen rätselraten spielen um die richtige Zeit rauszubekommen. Hier würde wahrscheinlich nicht zwingend die Einstellung über den Seitenbaum helfen, sondern eher direkt die Zeitzoneneinstellung im Event, wo ich die Zeit auswähle. Aber für verschiedene andere Sachen, wie z.B. Kommentare oder News wäre es vielleicht wichtig.

frontendschlampe avatar Dec 05 '13 21:12 frontendschlampe

Die Lösung wäre die Zeitzone des Servers in den Systemeinstellungen, Zeitzone pro Benutzer und pro Root-Seite. Dann sollte alles möglich sein. Halte ich durchaus für sinnvoll!

Toflar avatar Dec 06 '13 07:12 Toflar

Allerdings auch gefährlich, denn (im Gegensatz zum Uhrzeitformat) ist es nicht so, dass die Einstellungen in der Root-Seite die der Systemeinstellungen überschreiben. Sondern die Systemeinstellung entsprechen der Serverzeit, und die Root-Seite würde dann definieren dass die Eingaben im Backend in einem anderen Zeitformat ausgegeben werden sollen. Halte ich für sehr gefährlich.

Beispiel: Der Redakteur gibt im Backend ein, dass die News um 12 Uhr veröffentlicht werden soll. Die Root-Seite hat aber eine Verschiebung um 2h, womit die News effektiv ab 2 Uhr morgens erscheint. Ist natürlich ein mächtiges Feature, aber ob das dann nicht eher für Verwirrung sorgt?

aschempp avatar Dec 06 '13 09:12 aschempp

Siehe dazu auch contao/contao#5380.

leofeyer avatar Mar 26 '14 18:03 leofeyer

Nur mal ein paar überlegungen hierzu: Wir speichern nur Unix TS in der DB, sodass die Zeitzonen Infos komplett zur Laufzeit eingerechnet werden.

  • Welche TZ sollte ein registrierter Benutzer (mit TZ Einstellung GMT+1) in Event X (Startzeit 12:00 GMT) auf Seite A (TZ GMT-1) sehen?
  • In welcher TZ sollte das Datum im BE für Event X gepflegt werden: GMT, oder TZ der globalen contao einstellung, oder der TZ des registrierten BE-User, oder optimal die TZ wird pro Event mit abgefragt (evtl. mit Default TZ option im zugehörigen Kalender) und in einer eigenen Spalte gespeichert (die speicherung im startDate feld bleibt unix TS, was immer GMT ist)

außerdem wäre es für die sortierung von vorteil wenn man ein "zeitzonenspezifischen zeitstempel" in einer eigenen spalte speichert. Im prinzip rechnet man den offset der TZ zum unix TS hinzu, ist zwar jetzt nicht standardisiert irgendwo, aber funktioniert einfach.

backbone87 avatar Mar 30 '14 07:03 backbone87

Im Sinne der Rückwärtskompatibilität müssten wir das Backend weiterhin in der Zeitzone laufen lassen, die in der php.ini bzw. in der localconfig.php eingestellt ist. Die Ausgabe im Frontend könnte man entsprechend umrechnen, wenn entweder beim Startpunkt oder beim Benutzer eine entsprechende Information hinterlegt ist.

Allerdings finde ich das immer noch keine tolle Lösung, denn allein in den USA gibt es neun Zeitzonen und alle Besucher würden auf denselben englischen Startpunkt geleitet. (Besucher aus England, Irland und Schottland übrigens auch.) Welche Zeitzone legt man dann da als Standard fest?

leofeyer avatar Sep 10 '14 14:09 leofeyer

Es gibt aber noch das Problem, dass man die Zeitzone nicht an den Benutzer im BE binden kann. Wenn ein deutscher Redakteur Events für die USA pflegt, dann müsste dieser bei jedem Login seine Zeitzone anpassen, je nachdem was er gerade pflegen möchte. Oder er hat mehrere Benutzeraccounts. Ich denke das ist beides nicht sinnvoll. Ist es nicht möglich, bei allen Sachen, die ich BE im Zusammenhang mit der Zeit pflege, die Option der Zeitzone hinzuzufügen?

Beispiel: ich pflege ein Event und gebe Datum und Zeit an und muss zusätzlich noch die Zeitzone wählen. Standardanzeige wäre die eingestellte Zeitzone in den Einstellungen. Bei der Ausgabe könnte man die ausgewählte Zeitzone als Option mit ausgeben lassen. Beispiel Hawai: Veranstaltung am 23.09.2014, 10 Uhr (HST) oder (UTC-10:00). So lange wie ich die Zeitzone nicht ändere, wird nix ausgegeben.

Wäre jetzt mal nur eine Idee! ;-)

frontendschlampe avatar Sep 23 '14 07:09 frontendschlampe

Soweit mir bekannt bezieht sich die Zeitzone auf die Einstellung des Servers...=

aschempp avatar Sep 23 '14 07:09 aschempp

Deswegen habe ich ja gesagt, dass das Backend weiterhin in der Server-Zeitzone laufen muss. Nur die FE-Benutzer hätten dann eine umgerechnete Zeitzone.

leofeyer avatar Sep 23 '14 07:09 leofeyer

Soweit mir bekannt bezieht sich die Zeitzone auf die Einstellung des Servers...=

ja ... natürlich, aber mir ist es ja als Redakteur im BE erstmal völlig egal beim Pflegen eine Events, in welcher Zeitzone der Server und das System läuft

Deswegen habe ich ja gesagt, dass das Backend weiterhin in der Server-Zeitzone laufen muss. Nur die FE-Benutzer hätten dann eine umgerechnete Zeitzone.

richtig ... die Zeitzone des Servers ist nur die Grundlage ... aber ich benötige ja theoretisch gar keine Zeitanpassung/-umrechung im FE, denn ich gebe ja die absolute Zeit in Verbindung mit der Zeitzone an

Also ich wäre ja mal für eine Mumble-Diskussion, da es in meinen Augen ein durchaus sinnvolles Feature wäre. ;-)

frontendschlampe avatar Sep 23 '14 08:09 frontendschlampe

denn ich gebe ja die absolute Zeit in Verbindung mit der Zeitzone an

Nein, Du verstehst das falsch. In der Datenbank wird das Event in der Zeitzone des Servers gespeichert, alles andere wäre nicht rückwärtskompatibel. Die Benutzer (BE und FE) können jeweils eigene Zeitzonen definieren und sehen die Termine dann entsprechend umgerechnet.

leofeyer avatar Sep 23 '14 08:09 leofeyer

Nein, Du verstehst das falsch. In der Datenbank wird das Event in der Zeitzone des Servers gespeichert, alles andere wäre nicht rückwärtskompatibel.

hmmmm ... naja ... weiß ich nicht ... es ist mir schon klar, dass das Event in der DB in der Zeitzone des Servers gespeichert wird, aber wenn ich im BE mein Event mit Zeitzone speichere, dann kann es doch umgerechnet in der DB gespeichert werden und wieder umgerechnet ausgegeben werden, in Verbindung mit der eingegebenen Zeitzone habe ich alle Umrechnungswerte

Die Benutzer (BE und FE) können jeweils eigene Zeitzonen definieren und sehen die Termine dann entsprechend umgerechnet.

da stehe ich dann wieder bei dem Problem was ich um 9:51 Uhr beschrieben habe mit den verschiedenen Accounts

frontendschlampe avatar Sep 23 '14 08:09 frontendschlampe

Ja, vermutlich hast Du Recht. Ich sehe aber auch keine echte Lösung für dieses Problem. Siehe dazu auch meinen Kommentar oben:

Allerdings finde ich das immer noch keine tolle Lösung, denn allein in den USA gibt es neun Zeitzonen und alle Besucher würden auf denselben englischen Startpunkt geleitet. (Besucher aus England, Irland und Schottland übrigens auch.) Welche Zeitzone legt man dann da als Standard fest?

leofeyer avatar Sep 23 '14 08:09 leofeyer

deshalb immer noch der Ansatz, dass die Zeitzone nicht an den FE- oder BE-Benutzer gebunden ist, sondern lediglich an die jeweiligen Datumsangaben ... siehst du da gar keinen Ansatz drin?

frontendschlampe avatar Sep 23 '14 08:09 frontendschlampe

Nein, denn wie gesagt, alleine in den USA gibt es schon 9 Zeitzonen. Wie sollen Termine dort angezeigt werden, wenn wir nicht wissen, in welcher Zeitzone der Besucher lebt?

leofeyer avatar Sep 23 '14 09:09 leofeyer