Changing how times are displayed throughout the UI: 12-hour format or 24-hour format. Default to 12-hour format.
Changing whether or not relative times are displayed: relative or absolute.
Relative is "two weeks ago" vs. absolute "Sept 7th, 2019 5:00pm". Default to relative times.
We should be able to set the timezone attribute via the Users API. 12/24h and absolute/relative should be specific to the user's preferences and shouldn't be modifiable via the API (since they only apply to the UI).
We'll also probably need a migration to update this/set defaults for existing users.
I assumed these would be settings users can change to suit their needs, but it sounds like they might be a one time preference.
Nah, that wasn't my intent. Sorry for being unclear. They should be modifiable settings that users can change whenever they'd like. I was mainly referring to exposing these preferences in the users API to allow them to be modified programmatically.
An administrator can PUT request various modifications on a user, which is fine for time zone (perhaps a company moves and they want to update times for all their relocated employees) but not as much for the other two preferences, which should be specific to the user's preference on how they'd like to see times.
I think this just covers creating and updating the user settings
That's correct. @ekigbo did some investigation into this, so feel free to chat with him if we'd like some confirmation. The frontend work in #56997 (closed) should cover all of the changes, this is just creating the setting.
@lmcandrew@jeremy this was unassigned but still set for the %11.10 milestone. Are we still able to take this on? Or should we also reschedule the frontend issue?
@dennis I'm hoping we can pick this up in %11.10 as scheduled - there are quite a few high priority issues in this milestone though, so there is a chance it could slip.