Anniversaries: date off by one

Acho que, no contexto de uma comunidade fortemente localizada, você deveria poder especificar o fuso horário para o aniversário de cadastro (cakeday) no Discourse. Alterar o fuso horário do servidor não é algo que possamos fazer.

Isso é uma questão delicada e não tenho certeza de como resolvê-la, mesmo agora que permitimos que os usuários especifiquem “fusos horários”.

Se você se inscreveu em um fórum na Austrália no 2 de janeiro de 2019 às 8h.

  • Seu aniversário de 1 ano, segundo o “cakeday”, será em 1 de janeiro de 2020.

  • Quando você visitar a página de aniversários às 8h do dia 2 de janeiro, verá aniversários de 1 de janeiro de 2020 em vez do dia 2.

Acho que o que estamos pedindo aqui é usar fusos horários “locais” definidos nos perfis dos usuários para levar isso em conta.

Ou seja:

  • Seu aniversário de 1 ano deve ser 2 de janeiro de 2020, já que seu fuso horário local no perfil de usuário é o da Austrália.

  • Quando você visitar a página de aniversários no dia 2, deverá ver o dia 2.


Por enquanto, acho que apoio a solução simples: ao renderizar a página de aniversários, verificar o fuso horário local do usuário atual e usar essa data em vez da data UTC atual, para casos em que o usuário está logado. Deve ser uma mudança bem simples, talvez apenas duas linhas de código.

@techAPJ, você pode cuidar disso?

8 curtidas