2013-08-13 2 views
1

Я пытаюсь добавить события в FaceBook с включенным параметром часового пояса. Я пытаюсь добавить события в Великобритании с часовым поясом как «Европа/Лондон». Это то, что я замечаю.FaceBook Часовой пояс и время проведения событий

Когда я посылаю следующий Start & End раз

[start_time] => 2014-08-24T20:00:00+0100 
[end_time] => 2014-08-24T22:00:00+0100 

я получаю время как

[When] 
    Sunday, August 24, 2014 
    [Time] 
    8:00pm until 10:00pm 

если смотреть FaceBook сайта. Мой часовой пояс установлен в Лондон, который является UTC. Но когда я отправить событие в ноябре,

[start_time] => 2014-11-24T20:00:00+0000 
[end_time] => 2014-11-24T22:00:00+0000 

он становится отображаться как

[When] 
     Monday, November 24, 2014 
     [Time] 
     9:00pm until 11:00pm 

Это ожидаемое поведение. Будет ли время отрегулировано, а 8 вечера покажут правильно 24 ноября?

Благодаря Линн

ответ

3

Одна небольшая коррекция. Вы сказали:

Мой часовой пояс установлен в Лондоне, который является UTC

Europe/London зона зимой, которая обычно называется GMTUTC+00:00. Летом он переключается на UTC+01:00. который обычно называют BST. Неверно было бы сказать, что Лондон - UTC. Я думаю, вы уже это знали, я просто заявляю об этом здесь для других.

К сожалению, описание поведения для Facebook ожидается. Дело сводится к тому, что Facebook не знает, что вы в Europe/London. Он просто получает ваше текущее смещение часового пояса от JavaScript new Date().getTimezoneOffset(), когда вы входите в систему. Поскольку в настоящее время это UTC+01:00, это смещение, которое применяется к событиям при просмотре страницы как пользователя. Это делает ошибочное предположение о том, что смещение не изменится или что вы не будете смотреть на время будущих событий до следующего перехода.

API-интерфейс Facebook Graph представляет это в объекте user. Он имеет свойство timezone, которое является просто числом. Думаю, разработчики Facebook не читают timezone tag wiki, где я проясняю, что «Часовой пояс! = Смещение».

Будет ли отрегулировано время и 8 часов вечера будет показано правильно 24 ноября?

Да. Он покажет правильное время, как только пользователь войдет в систему после следующего переключения с BST на GMT, which is on October 27th this year.

+1

Спасибо Мэтту за подробное объяснение этого. Из вашего ответа я предполагаю, что я правильно отправляю время в FaceBook, и этот формат для часового пояса должен работать во всех других местах. –

Смежные вопросы