Anniversaries: date off by one

地域に特化したコミュニティの文脈では、Discourse の「ケーキデイ」のタイムゾーンを指定できるようにするべきだと考えます。サーバーのタイムゾーンを変更することは、実際には私たちの範疇ではありません。

これは難しい問題で、現在ユーザーが「タイムゾーン」を指定できるようになったとしても、どう解決すればよいか確信が持てません。

例えば、2019 年 1 月 2 日の午前 8 時にオーストラリアのフォーラムに登録したとします。

  • 「ケーキデイ」に基づく 1 周年記念日は、2010 年 1 月 1 日となります。
  • 1 月 2 日の午前 8 時に記念日ページを訪れると、2 日ではなく 1 月 1 日の記念日が表示されてしまいます。

ここで求められているのは、ユーザーに定義された「ローカル」タイムゾーンを使用して、これらの事柄を処理することだと考えます。

つまり:

  • ユーザープロフィールのローカルタイムゾーンがオーストラリアである場合、1 周年記念日は 2019 年 1 月 1 日となるべきです。
  • 2 日に記念日ページを訪れた場合、2 日が表示されるべきです。

現時点では、単純な修正を支持します。つまり、記念日ページをレンダリングする際、ログイン中のユーザーのローカルタイムゾーンを参照し、UTC 現在の時刻の代わりにその日付を使用するというものです。これは非常に簡単な変更で、おそらく 2 行のコードで済むでしょう。

@techAPJ さん、これを対応していただけませんか。

「いいね!」 8