Foren / National / Russian / Тех. поддержка / Установка часовых поясов в Siena

не разобрался с настройками

Macik
#1 2. Dezember 2011, 22:14

Поставил Siena с нуля.

Пользователь Админ. В общих настройках установли "Часовой пояс по умолчанию" +4 (как я понимаю это то значение которое будет установлено у новых пользователей при регистрации и гостей).

В настройках пользователя "Админ" выбрал +4.0.

Сервер локальный и время на сервере совпадает с ситемным.

Сечас у меня на часах 1:56 (ночи). На сервере соответственно тоже 1:56. Живу я в часовом поясе +4, т.е. GMT для меня сейчас -  локальное -4 часа. Сервер (PHP) зону знает и для Гринвича возвращает правильные 21:56 GMT.

Иллюстрации:

http://bm.galaxyhost.org/_rs/capt/20111203-7mu-10kb.jpg

http://bm.galaxyhost.org/_rs/capt/20111203-9ct-6kb.jpg

Однако в настройках пользователя вижу указанную картину:

GMT+4 03.12.2011 05:56  03.12.2011 01:56 GMT / 03.12.2011 01:56 GMT4.0

Т.е. я либо не понимаю логики. Либо это баг.

Прояните пожалуйста как правильно настроить.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Trustmaster
#2 4. Dezember 2011, 12:27

Логика описана верно.

Корень бага в том, что раньше было 2 смещения: смещение времени сервера и GMT + смещение зоны пользователя. Теперь время сервера всегда возвращается в GMT, поэтому корректировать надо только на зону пользователя.

Кое-где у нас ещё встречается неправильный расчёт смещения, поэтому это баг, и каждый такой случай надо выявлять и исправлять.

May the Source be with you!
Moool13
#3 21. Januar 2012, 15:01

Если зона по-умолчанию +4, и у юзера в настройках +4, то время выводится неправильно. (По идее часовой пояс +4, а выводится +8)

Вариант решения такой:

Если у юзера не установлен часовой пояс - выводить по-умолчанию, усли установлен - то установленный, не прибавляя к поясу по-умолчанию. Соответственно, в селекте выбора пояса (в настройках профиля) сделать выриант выбора "---" который устанавливает пояс по-умолчанию

Trustmaster
#4 21. Januar 2012, 16:38

А оно сейчас и не прибавляется, насколько я вижу в коде. А где именно выводится неправильно?

May the Source be with you!
Moool13
#5 21. Januar 2012, 16:56

Извиняюсь, обновился и все норм)