Календарь Google - Отображение повторяющихся событий, таких как обычные события


Я пытаюсь показать список событий на следующие 20 дней из учетной записи календаря Google. Приводящие в бешенство повторяющиеся события не отображаются (я полагаю, потому что время их начала старое)... Итак, есть какие-нибудь идеи?

require_once dirname(__FILE__).'/../../../Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_HttpClient');
Zend_Loader::loadClass('Zend_Gdata_Calendar');

$service = new Zend_Gdata_Calendar();

$query = $service->newEventQuery();
$query->setUser('REMOVED');
$query->setVisibility('public');
$query->setProjection('full');
$query->setOrderby('starttime');
$query->setSortOrder('ascending');
$query->setFutureevents('true');
$query->setMaxResults(20); 

try { $eventFeed = $service->getCalendarEventFeed($query); }
catch (Zend_Gdata_App_Exception $e) { return; }

Я готов принять любые альтернативные методы, которые приведут все мои публичные мероприятия в порядке возрастания. Я пробовал RSS, но даты, похоже, соответствуют времени, когда они были добавлены в календарь.

Author: Oli, 2009-08-17

2 answers

Проекция - это то, с чем я играл раньше. Это не помогает (если только я не хочу анализировать и анализировать повторяющиеся события вручную). Но эта связь была золотой.

$query->setParam('singleevents','true');

Из их документов:

Одиночные события

Указывает , следует ли расширять повторяющиеся события или представлять их как одно событие.

Допустимыми значениями являются true (развернуть повторяющиеся события) или false (оставить повторяющиеся события в виде одного события). Значение по умолчанию равно false.

На мой взгляд, false - глупый дефолт, но хей-хо. Похоже, теперь это работает!

 6
Author: Oli, 2009-08-19 12:31:29

Изменение этого:

$query->setProjection('full');

К этому:

$query->setProjection('composite');

Предоставит вам всевозможные дополнительные данные, включая повторяющиеся события. Это соответствует ссылке на API календаря Google: http://code.google.com/apis/calendar/docs/2.0/reference.html

 1
Author: Josh Lindsey, 2009-08-18 19:54:38