DST Причинение разницы во времени в часах в GCal +1 час - PullRequest
1 голос
/ 29 марта 2012

У меня есть приложение на основе php, где я интегрировал GCal с API OAuth 2.0. Все работает отлично, кроме DST +1 час выпуска. Это приложение только для Великобритании, и я также храню часовые пояса учетной записи пользователя. Если я добавляю задачу в 3:00 утра, на GCal она показывает мне 4:00 утра. Это когда я жестко закодировал часовой пояс как Европа / Лондон в setTimeZone () при добавлении задачи. Кроме того, настройки учетной записи GCal также как Европа / Лондон. Это немного расстраивает, поэтому, пожалуйста, помогите мне с тем, что я должен изменить в своем коде, чтобы справиться с этой разницей во времени DST + 1 час. Вот код:

$evt = new Event();
$evt->setDescription($txtDesc); 
$evt->setSummary($taskTypeTxt);

#--Setting Event Date
$evtDT  = new EventDateTime();
$evtDT2     = new EventDateTime();

$evtDT->setDateTime($startDate); 
$evtDT->setTimeZone('Europe/London');

$evtDT2->setDateTime($endDate);
$evtDT2->setTimeZone('Europe/London');
$evt->setOriginalStartTime($evtDT);
$evt->setStart($evtDT);
$evt->setEnd($evtDT2);

$field = array('items/id');
$evtId = $cal->events->insert($user_email,$evt,$field);

1 Ответ

0 голосов
/ 03 мая 2012

У меня такая же проблема.

Кажется, существует некоторая неопределенность в отношении того, следует ли устанавливать часовой пояс GMT + 0 или GMT + 1 (BST).Последнее подразумевает, что мне впоследствии придется обрабатывать изменения летнего времени вручную, но когда я установил GMT + 0, он не обновлялся автоматически при изменении часов.

...