/** * GoogleCalendar::getEvents() * * @param Zend_Gdata_Calendar_EventQuery $query カスタムクエリ * @param int $start_date 取得範囲の開始日付 * @param int $end_date 取得範囲の終了日付 * @param bool $only_future 未来のみフラグ * * @return Zend_Gdata_App_Feed */ public function getEvents(Zend_Gdata_Calendar_EventQuery $query = null, $start_date = null, $end_date = null, $only_future = false) { if (!$this->initialized) { return null; } if (!$query instanceof Zend_Gdata_Calendar_EventQuery) { $query = $this->service->newEventQuery(); $query->setUser('default')->setVisibility('private')->setProjection('full')->setOrderby('starttime')->setSortorder('ascend'); if (isset($start_date)) { $query->setStartMin(date('Y-m-d H:i:s', DateTimeUtil::long2unix($start_date) - 32400)); } if (isset($end_date)) { $query->setStartMax(date('Y-m-d H:i:s', DateTimeUtil::long2unix($end_date) - 32400)); } if ($only_future) { $query->setFutureEvents(true); } } return $this->service->getCalendarEventFeed($query); }