El plugin de Calendario termina demasiado pronto los eventos de todo el día y los renderiza incorrectamente

TL;DR: Al utilizar un tema para el caso de uso de “calendario de vacaciones del equipo” con personas que registran respuestas en múltiples zonas horarias, el calendario muestra los elementos que terminan demasiado pronto.

Reproducir:

  • Tener instalado el Plugin de Calendario.
  • Configurar un tema para que un equipo lo utilice como calendario de “ausencia” o “vacaciones”. Incrustar el calendario en la primera publicación del tema según el ejemplo.
  • Comenzar a que los miembros del equipo agreguen sus vacaciones como respuestas al tema, por ejemplo:
    [date=2020-02-05 timezone="America/New_York"] → [date=2020-02-07 timezone="America/New_York"] Vacaciones geniales

Comportamiento esperado:

  • Un usuario con la zona horaria configurada en America/Los_Angeles verá el ejemplo anterior en la cuadrícula del calendario ocupando todo el día del 5, 6 y 7 de febrero, igual que lo ve el autor del evento.

Comportamiento real:

  • Un usuario con la zona horaria configurada en America/Los_Angeles verá el ejemplo anterior en la cuadrícula del calendario ocupando todo el día del 4, 5 y 6 de febrero, mientras que la persona que creó el evento ve correctamente el 5, 6 y 7 de febrero.

Teorías:

Parece que cuando no se proporciona una hora en la entrada del evento, se asume una hora de inicio de 00:00 y una hora de fin de 00:00 en la zona horaria proporcionada en dicha entrada. Por lo tanto, en el ejemplo de la persona en la zona horaria de Los Ángeles, el colega en Nueva York comienza sus vacaciones del 5 al 7 de febrero a las 21:00 (hora de Los Ángeles) del 4 de febrero, y esas vacaciones terminan el 6 de febrero a las 21:00 (hora de Los Ángeles) (7 de febrero a las 00:00 en Nueva York).

Como mínimo, parece que alguien implicaría una hora de fin de 23:59:59 en la fecha proporcionada si no se especifica una hora, y no 00:00:00.

También me parece que para eventos sin horas específicas proporcionadas, deberían mostrarse independientemente de la zona horaria, de modo que siempre coincidan con lo que declaró el autor, independientemente del espectador.

1 me gusta

Hola Michael,

Recientemente realicé un cambio en el plugin del calendario que está causando esto. Se agregaron dos configuraciones del sitio que ayudan a que el plugin del calendario funcione como un “calendario de vacaciones del equipo” viable.

El problema con los eventos de todo el día es exactamente lo que describiste: los días comienzan a diferentes horas según la zona horaria. Para solucionar esto, puedes configurar estas dos opciones (creo que 06:00 y 18:00 funcionan bien), de modo que cualquier fecha sin hora especificada comience a las 6:00 y termine a las 18:00.

Por favor, pruébalo y házmelo saber cómo te funciona.

6 Me gusta

Genial. Dado que esto es una configuración del sitio, ¿a qué zona horaria se refieren estas entradas?

1 me gusta

La zona horaria sigue siendo la zona horaria del usuario que publica.

4 Me gusta

¡Se ve genial ahora. ¡Gracias!

1 me gusta