Insert Date Timezone is always UTC ; my Timezone is ignored
A discussion about an issue where the “Insert Date” button in Discourse creates a date string with the timezone set to UTC, ignoring the user’s timezone setting.
Users hewo7 and lorddevil reported that when they use the “Insert Date” button, the timezone is set to UTC, but when they manually remove the quotes from the timezone, it works correctly.
joffreyjaffeux investigated the issue and found that the problem is caused by the German locale replacing quotes with German quotes, which breaks the parser.
A fix was implemented by joffreyjaffeux in the local-dates plugin. The fix is available in the tests-passed branch, and users running their installation in Docker can update to the latest version to resolve the issue.
Yes, as I wrote here it works. I guess it is something in the diff from the version here to mine. I remember that it already worked before a couple of updates I made.
I am having the exact same issue! Without quotes it works like a charm. But the Discourse Editor always creates “Europe/Berlin” instead of Europe/Berlin - and in preview it shows wrong time then. Can this be fixed?
I have the same behaviour as mentioned above. As soon as I leave out the “” it all works fine. But when I use them the system seems to take the UTC +/- the hours of the timezone my client runs in.
Btw. the same occurs here when I write nonsense in the timezone like: [date=2019-08-20 time=20:00:00 timezone="nonsense"]
or [date=2019-08-20 time=20:00:00 timezone=nonsense] 2019-08-20T20:00:00Z
I also state the exact same problem. It more or less seems to be an issue with “German” installations.
Well, fun fact, I tried to reset settings by running domain.de/wizard there I changed the locale to English US and walked through the complete wizard. With English setting I can paste times and they are shown correctly. Well is say for example Tomorrow 11:15 PM (Europe/Berlin) but I really putted 23:15 in German time. So it is displayed correctly.
When I wizard my forum back to “Deutsch” and pasting a new appointment with time … then the + 1 hour effect comes back again. (The times pasted in English setup are still displayed right).
So this does not seem to be a server time thing. Something seems to crash between localization of Europe and UTC.
Little addition, I realized a ¿small? difference, between my installation and this official one.
We deactivated the “allow user locale” option. So users are not able to change language by themselves. I don not know if this is helpful.
What is about the others that experienced the same problems, namely @Daniel_Tesla@lorddevil, @zogstrip@hewo7 can your users change their interface locale settings. Or in german under Settings › General Settings: allow user locale: “Erlaube Benutzern, ihre eigene Oberflächensprache zu wählen”
More context, it seems like that when Discourse instance is set to german locale, we will replace quotes " by german quotes „“ which was breaking our parser.
@gerhard I made a fix directly into local-dates for now, do you think we should try to fix it higher in the chain?
parseBBCodeTag itself before sending the matched string?