public function save() { $values = $this->getValues(); $list = $this->getOption('list'); $opGoogleCalendarOAuth = $this->getOption('opGoogleCalendarOAuth'); $entry = $list[$values['choice']]; $result = $opGoogleCalendarOAuth->getContents(str_replace(opGoogleCalendarOAuth::SCOPE, '', $entry['contents']['src']), 'opCalendarApiResultsJsonEvents', opCalendarApiHandler::GET, array('start-min' => sprintf('%04d-%02d-01T00:00:00', date('Y'), $values['months']), 'start-max' => sprintf('%04d-%02d-%02dT23:59:59', date('Y'), $values['months'], opCalendarPluginToolkit::getLastDay($values['months'])), 'alt' => 'jsonc')); if (!$result) { return false; } opCalendarPluginToolkit::updateGoogleCalendarCronFlags($entry['contents']['src'], $values['google_cron_update'][0], $values['public_flag'], $this->member); return opCalendarPluginToolkit::insertSchedules($result->toArray(), $values['public_flag'], true); }
public function save() { $values = $this->getValues(); $id = $this->getOption('id'); $googleCronUpdate = isset($values['google_cron_update']) && (bool) $values['google_cron_update']; $publicFlag = $values['public_flag']; $calendar = $this->getOption('googleCalendar'); $lastDay = opCalendarPluginToolkit::getLastDay($values['months']); $yearMonth = sprintf('%04d-%02d', date('Y'), $values['months']); $events = $calendar->events->listEvents($id, array('timeMin' => date('c', strtotime(sprintf('%s-01 00:00:00', $yearMonth))), 'timeMax' => date('c', strtotime(sprintf('%s-%02d 23:59:59', $yearMonth, $lastDay))), 'showDeleted' => true)); if (!$events) { return false; } opCalendarPluginToolkit::updateGoogleCalendarCronFlags($googleCronUpdate, $publicFlag, $this->member); return opCalendarPluginToolkit::insertSchedules($events, $publicFlag); }