Я работаю с PHP api для Google Calendar и очень разочаровываюсь.Проблемы с Google Calendar EventId (PHP Api)
Я загрузил пакет zend со всеми библиотеками на странице Google и работал с предоставленным кодом, чтобы убедиться, что он соответствует моим требованиям.
Проблема, с которой я сталкиваюсь, связана с возвратом события из системы. Предоставленный код включает демонстрацию с функцией getEvent ($ clientId, $ eventId), которая на основе документации и чтения кода я ожидаю вернуть событие, которое находится в моем календаре, которое соответствует предоставленному идентификатору.
Так что в моих тестах я создаю новое событие, а затем пытаюсь его восстановить. Тем не менее, всякий раз, когда я получить событие, Zend_data_Gdata_App_HttpException является:
function processPageLoad()
{
global $_SESSION, $_GET;
if (!isset($_SESSION['sessionToken']) && !isset($_GET['token'])) {
requestUserLogin('Please login to your Google Account.');
} else {
$client = getAuthSubHttpClient();
$id = createEvent ($client, 'Tennis with Beth',
'Meet for a quick lesson', 'On the courts',
'2010-10-20', '10:00',
'2010-10-20', '11:00', '-08');
$newEvent = getEvent($client, $id);
}
}
код для CreateEvent() является:
function createEvent ($client, $title = 'Tennis with Beth',
$desc='Meet for a quick lesson', $where = 'On the courts',
$startDate = '2008-01-20', $startTime = '10:00',
$endDate = '2008-01-20', $endTime = '11:00', $tzOffset = '-08')
{
$gc = new Zend_Gdata_Calendar($client);
$newEntry = $gc->newEventEntry();
$newEntry->title = $gc->newTitle(trim($title));
$newEntry->where = array($gc->newWhere($where));
$newEntry->content = $gc->newContent($desc);
$newEntry->content->type = 'text';
$when = $gc->newWhen();
$when->startTime = "{$startDate}T{$startTime}:00.000{$tzOffset}:00";
$when->endTime = "{$endDate}T{$endTime}:00.000{$tzOffset}:00";
$newEntry->when = array($when);
$createdEntry = $gc->insertEvent($newEntry);
return $createdEntry->id->text;
}
И, наконец, код GetEvent() является:
function getEvent($client, $eventId)
{
$gdataCal = new Zend_Gdata_Calendar($client);
$query = $gdataCal->newEventQuery();
$query->setUser('default');
$query->setVisibility('private');
$query->setProjection('full');
$query->setEvent($eventId);
try {
$eventEntry = $gdataCal->getCalendarEventEntry($query);
return $eventEntry;
} catch (Zend_Gdata_App_Exception $e) {
var_dump($e);
return null;
}
}
Я натолкнулся на это недавно с другого сайта, но это точно так, я отдаю его вам. Спасибо, что ответили. – user321605