Комментарии 16
Зачем при посещении сайта менять часовой пояс?
Не при посещении, а при переезде в местность, где другой часовой пояс.
Зачем? Потому что сайты часто отображают время сообщения. Или какого-либо события. И делают это в соответствии с часовым поясом клиента.
Зачем? Потому что сайты часто отображают время сообщения. Или какого-либо события. И делают это в соответствии с часовым поясом клиента.
Мне кажется, что людей, для которых время сообщений или событий критически важно, не так уж и много. А если и важно, то не настолько, чтобы изобретать велосипеды. Хотя могу и ошибаться.
Время сообщения не так уж важно, да.
Хотя при переезде на несколько месяцев неуютно везде видеть неправильное время.
Но для сайта типа «Календарь», который предназначен для планирования времени, и посылает напоминания о предстоящих событиях — это важно.
Если часовой пояс в браузере и в настройках пользователя на сервере разные, то на рубеже дней можно получить ситуации типа «Вы пытаетесь ввести трату за день, который ещё не наступил»
Хотя при переезде на несколько месяцев неуютно везде видеть неправильное время.
Но для сайта типа «Календарь», который предназначен для планирования времени, и посылает напоминания о предстоящих событиях — это важно.
Если часовой пояс в браузере и в настройках пользователя на сервере разные, то на рубеже дней можно получить ситуации типа «Вы пытаетесь ввести трату за день, который ещё не наступил»
Ну и отобразится у вас время сообщения неверно, вы очень расстроитесь? Я считаю, что часовой пояс клиента должен влиять только на отображение, а вся логика должна осуществляться в часовом поясе сервера.
А границу между днями проводить тоже по времени сервера (или тогда уже лучше UTC)?
Но ведь времени клиента не стоит доверять. Если вы выводите блоки «Вчера» и «Сегодня» определяя день по времени клиента, что будет, если клиент выставит время на пару лет вперед? В любом случае, мне кажется, не стоит доверять клиенту.
Для того и делается настройка «Ваш часовой пояс», чтобы такую информацию отдавать вам в выбранном вами часовом поясе, а не в том, который у вас на компьютере установлен.
Но если в настройке «Ваш часовой пояс» одно, а на компьютере другое — то это вносит путаницу.
А если при добавлении записи можно указывать время, и по умолчанию используется текущее.
Если текущее время смотреть на стороне клиента, то будет использовано локальное время. Если запрашивать с сервера, то можно будет использовать время, указанное в профиле, но тогда при выборе времени вручную пользователю нужно будет помнить, что время он должен выбирать не по локальному часовому поясу, а по профильному.
А если при добавлении записи можно указывать время, и по умолчанию используется текущее.
Если текущее время смотреть на стороне клиента, то будет использовано локальное время. Если запрашивать с сервера, то можно будет использовать время, указанное в профиле, но тогда при выборе времени вручную пользователю нужно будет помнить, что время он должен выбирать не по локальному часовому поясу, а по профильному.
Ну вот, скажем, Хабр показывает все времена по Москве, независимо от часового пояса клиента.
Подход, конечно, спорный, но за несколько лет трудности это вызывало всего раз-другой.
Подход, конечно, спорный, но за несколько лет трудности это вызывало всего раз-другой.
Понаехали тут.
по аналогии с OpenID или gravatar… Но, судя по достаточно малой распространённости вышеуказанных сервисов
Фигасе малораспространенные сервисы…
где на хабре можно указать таймзону?
Мы раньше на проекте пытались учитывать локальное время посетителя для отображения времени новостей и прочего. Потом забили, никого это особо не волнует, особенно если для дефолтного времени использовать какую-то известную зону, например МСК. К тому же пропадает необходимость обработны разных урлов для ссылок, в которых фигурирует время. У нас ссылки имеют вид /год/месяц/день/урл.хтмл. И вот это самый день часто мог отличаться в разных зонах. А если юзеры пытались обмениваться ссылками, то вообще ад получался. Убрали, используем московское.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Часовые пояса