Page MenuHomePhabricator

Setting explicit time zone in Outreach Dashboard
Open, Needs TriagePublic

Description

The Outreach Dashboard now sets the time zone of Activity tracking start and end based on the location of user creating the Program (if I understand well).

This have several issues:

  • it is inconvenient for global organisations, where programs are run in some specific time zone, but organisers live across the globe (both for creating a program and viewing it)
  • when program runs thru change of daylight saving time (winter and summer time) (see T125546#2611674)

As a concrete example, now I am working on the competition CEE Spring in Esperanto. It is global, so we use UTC. But the Dashboard requires me to calculate the times for CET for start and CEST for end.

Event Timeline

This is worth considering, but I'm not sure it's worth it to increase the complexity of the UI to add a timezone picker. We're currently storing all times as UTC, but converting to the user's local timezone on the frontend, which is a good solution for most users. But perhaps it could be done in a way that's unobtrusive enough to be worth it.

Than, there is a question what is the source of "local timezone". I was taught that it is the personal account setting on the wiki used to login thru OAuth. So I have set my personal global setting to UTC - specifically for this reason - and taught others to do same. But the Dashboard showed me now my timezone as "Central European Summer Time" - which is true for the place I physically am, but not for my wiki setting, nor for what was intended to be set in the Dashboard.

Because selection and working of he timezone is non-intuitive, I consider that by saving some complexity of UI, there is increased complexity of workflow (need for calculating timezone, which work differently for people around the world).

Btw, the early proposal looks quite fine (beside the non-global AM/PM picker...).

Programs Dashboard Time picker new wireframe.jpg (608×1 px, 77 KB)

Possibly non-obtrusive solutions:

  • Have a grayed timezone picker prefiled with the default timezone (whether from personal setting on wiki, or the country determined by geolocating IP, or whatever).
  • Have a personal setting in the Dashboard to show timezone picker, which is disabled by default.

(to be honest, selecting the start and end timezone is possibly the most intuitive part of the workflow in the whole Dashboard - the only one I could figure out without a dedicated training)

Thanks, this is helpful feedback.

Currently, the source of the timezone comes from the browser (which typically gets the timezone from the operating system), via the moment library.

Maybe, only as a quick fix, the local time zone to be used could be explicitly named in the time setting screen. Like:

Start and end times are displayed in your local time zone (Central European Summer Time - UTC+2).

Already that would help. And the search for better solution can continue. (maybe not worth of quick fixes, through)