Added support for user timezones and user browser timezone by default (incomplete) (#13626)

* Added support for user timezones and user browser timezone byt default

* Formatting fixes

* Use the timezone for alert log display

also added validation for the timezone because it's being used in SQL.

* Formatting fixes

* Added return type

* Formatting"

* Update the latency graphs to use the user timezone

* Simplify the web routes config

* Update phpstan to ignore type error

* Fixed up the phpstan config

* Reverse phpstan change

* Re-apply phpstan override

* Remove the option to unset the session timezone

* Formatting fix

* Update outge and event logs to use session timezone

* Fix route for the timezone control

* Made the timezone more dynamic

* Fix a logic error that was stopping the timezone from being set automatically on login

* Prevent getPref from being called twice

* again prevent getPref double call

* getPref double call

* Fixed typo made during merge

* Fixed merge error in phpstan-baseline.neon

* Change spaces to tabs in phpstan-baseline.neon

* Update error count

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
This commit is contained in:
eskyuu
2023-05-09 23:24:48 +08:00
committed by GitHub
parent 56e9fa3742
commit ce0734ff5d
19 changed files with 216 additions and 20 deletions

View File

@@ -73,6 +73,7 @@ class UserPreferencesController extends Controller
'site_style' => UserPref::getPref($user, 'site_style'),
'site_style_default' => $styles[$default_style] ?? $default_style,
'site_styles' => $styles,
'timezone' => UserPref::getPref($user, 'timezone'),
'hide_dashboard_editor' => UserPref::getPref($user, 'hide_dashboard_editor') ?? 0,
];
@@ -110,6 +111,10 @@ class UserPreferencesController extends Controller
'required',
Rule::in(array_merge(['default'], array_keys($this->getValidStyles()))),
],
'timezone' => [
'required',
Rule::in(array_merge(['default'], timezone_identifiers_list())),
],
'hide_dashboard_editor' => 'required|integer',
];