static function getEvent($bean, $user) { $client = self::getClient($user); if ($client != false) { $gdataCal = new Zend_Gdata_Calendar($client); $newEvent = null; $gid = self::getGoogleId($bean, $user); if ($gid) { try { $newEvent = $gdataCal->getEntry($gid, 'Zend_Gdata_Calendar_EventEntry'); } catch (Exception $e) { // Not found, creating } } if ($newEvent === null) { $newEvent = $gdataCal->newEventEntry(); } return $newEvent; } }
/** * @return Zend_Gdata_App_Entry|NULL */ public static function internalGetEvent($calendar, $eventId) { try { $client = new Zend_Http_Client(); if (!empty($calendar->username) && !empty($calendar->password)) { $client = Zend_Gdata_ClientLogin::getHttpClient($calendar->username, $calendar->password, Zend_Gdata_Calendar::AUTH_SERVICE_NAME); } $service = new Zend_Gdata_Calendar($client); $query = $service->newEventQuery(); $query->setUser($calendar->calendar_id); if ($calendar->magic_cookie != null) { $query->setVisibility('private-' . $calendar->magic_cookie); } $query->setProjection('full'); $query->setEvent($eventId); $query->setParam('ctz', 'Etc/GMT'); $query->setParam('hl', GCalendarUtil::getFrLanguage()); $event = $service->getEntry($query, 'GCalendar_Entry'); $event->setParam('gcid', $calendar->id); $event->setParam('gccolor', $calendar->color); $event->setParam('gcname', $calendar->name); return $event; } catch (Zend_Gdata_App_Exception $e) { JError::raiseWarning(200, $e->getMessage()); return null; } }