private function _process(Google_Event $event) { $event->setSummary($this->_getReservationSummary()); $event->setDescription($this->_getReservationDescription()); $timeBegin = DateTime::createFromTimestamp($this->_reservation->getFinalVisitTime()); $timeEnd = DateTime::createFromTimestamp($this->_reservation->getVisitEndTime()); $timeEventBegin = new Google_EventDateTime(); $timeEventEnd = new Google_EventDateTime(); $timeEventBegin->setDateTime($timeBegin->getGoogleApiDatetime()); $timeEventEnd->setDateTime($timeEnd->getGoogleApiDatetime()); $event->setStart($timeEventBegin); $event->setEnd($timeEventEnd); return $event; }
public function AddActivitat($id, $timestamp_inici, $timestamp_fi, $organitzador, $email, $titol, $link, $location, $summary, $description, $calendarid, $color_id, $idS) { date_default_timezone_set('Europe/Madrid'); //echo date(DateTime::RFC3339,mktime(17,30,00,1,14,2013)); $E = new Google_Event(); $O = new Google_EventOrganizer(); $O->setDisplayName($titol); $O->setEmail($email); $E->setOrganizer($O); $E->setSummary($titol); $E->setHtmlLink($link); $E->setLocation($location); $E->setDescription(html_entity_decode(strip_tags($description))); $start = new Google_EventDateTime(); $start->setDateTime(date(DateTime::RFC3339, $timestamp_inici)); $E->setStart($start); $end = new Google_EventDateTime(); $end->setDateTime(date(DateTime::RFC3339, $timestamp_fi)); $E->setEnd($end); $E->setColorId($color_id); $this->cal->events->insert(OptionsPeer::getString('GOOGLE_CALENDAR_ID', $idS), $E); }
/** * Add unavailable period event to Google Calendar. * * @param array $provider Contains the provider record data. * @param array $unavailable Contains unavailable period's data. * @return Google_Event Returns the google event's object. */ public function add_unavailable($provider, $unavailable) { $this->CI->load->helper('general'); $event = new Google_Event(); $event->setSummary('Unavailable'); $event->setDescription($unavailable['notes']); $start = new Google_EventDateTime(); $start->setDateTime(date3339(strtotime($unavailable['start_datetime']))); $event->setStart($start); $end = new Google_EventDateTime(); $end->setDateTime(date3339(strtotime($unavailable['end_datetime']))); $event->setEnd($end); // Add the new event to the google calendar. $created_event = $this->service->events->insert($provider['settings']['google_calendar'], $event); return $created_event; }
function insertGoogleCalendarEvent($resrvation_id) { if ($resrvation_id) { try { $resrvation_details = getReservationDetailFromId($resrvation_id); $calendar_id = getCalendarIdFromProperty($resrvation_details['PropertyID']); $row_credential = getGoogleCredential(); $eventstartdate = date('Y-m-d', strtotime($resrvation_details['ArrivalDate'])); $eventenddate = date('Y-m-d', strtotime($resrvation_details['DepartureDate']) + 86400); $esd = $eventstartdate . ' 00:00:00'; $eed = $eventenddate . ' 10:00:00'; $pst = new DateTimeZone('America/Los_Angeles'); $gmt = new DateTimeZone('GMT'); $dates = new DateTime($esd, $pst); $dates->setTimezone($gmt); $eventstartdate = $dates->format('Y-m-d') . 'T' . $dates->format('H:i:s') . 'Z'; $datee = new DateTime($eed, $pst); $datee->setTimezone($gmt); $eventenddate = $datee->format('Y-m-d') . 'T' . $datee->format('H:i:s') . 'Z'; //change as per client requirement to display full period from checkin to checkout on google calender //$eventenddate = date('Y-m-d',(strtotime($resrvation_details['DepartureDate']) + 172800)); // 86400 122400 $tenantname = stripslashes($resrvation_details['FirstName']); if ($resrvation_details['MiddleName']) { $tenantname .= ' ' . stripslashes($resrvation_details['MiddleName']); } $tenantname .= ' ' . stripslashes($resrvation_details['LastName']); $tenantemail = stripslashes($resrvation_details['Email']); $tenantphone = stripslashes($resrvation_details['TelephoneNumber']); $tenantdayphone = stripslashes($resrvation_details['DaytimePhone']); $tenantstaypurpose = stripslashes($resrvation_details['StayPurpose']); //Event Summery i.e. Event Title $summery = 'Reservation Period - ' . $tenantname; //Event Description $description = "Tenant Details:\n\r Name: {$tenantname}\n\r Email: {$tenantemail}\n\r Phone: {$tenantphone}\n\r Day Phone: {$tenantdayphone}\n\r Stay Purpose: {$tenantstaypurpose}"; include_once 'src/Google_Client.php'; include_once 'src/contrib/Google_CalendarService.php'; $client = new Google_Client(); $client->setClientId($row_credential['ClientId']); $client->setClientSecret($row_credential['ClientSecret']); $client->setRedirectUri($row_credential['RedirectUri']); $client->setDeveloperKey($row_credential['DeveloperKey']); $cal = new Google_CalendarService($client); $client->setAccessToken($row_credential['AccessToken']); if ($client->getAccessToken()) { $eventendtime = new Google_EventDateTime(); $eventendtime->setDateTime($eventenddate); $eventstarttime = new Google_EventDateTime(); $eventstarttime->setDateTime($eventstartdate); $addevent = new Google_Event(); $addevent->setEnd($eventendtime); $addevent->setStart($eventstarttime); $addevent->setDescription($description); $addevent->setSummary($summery); $eventadresp = $cal->events->insert($calendar_id, $addevent); updateEventId($resrvation_id, $eventadresp['id']); } } catch (Exception $e) { /* echo '<pre>'; print_r($e); echo '</pre>'; exit; */ //log error for debbug $response = json_encode($e); $insert_errsql = "INSERT INTO debug_calendarerr SET Response='" . mysql_real_escape_string($response) . "', ReservePropertyId='" . $resrvation_id . "'"; $result_errsql = mysql_query($insert_errsql); } } }
} $seevent = Engine_Api::_()->getItem('event', $event_id); if (is_null($seevent)) { $_SESSION['google_calendar_message'] = Zend_Registry::get("Zend_Translate")->_("This event is not existed!"); $url = $view->url(array('id' => $event_id), 'event_profile', true); header('location: ' . $url); exit; } #Create Google Event $event = new Google_Event(); #Set Summary $event->setSummary(html_entity_decode($seevent->getTitle(), ENT_QUOTES, 'UTF-8')); #Set Description $sDescription = strip_tags(html_entity_decode($seevent->description, ENT_QUOTES, 'UTF-8')); $sEventUrl = $seevent->getHref(); $event->setDescription($sDescription); #Set Location $sLocation = html_entity_decode($seevent->location, ENT_QUOTES, 'UTF-8'); if ($seevent->address != '') { $sLocation .= ', ' . html_entity_decode($seevent->address, ENT_QUOTES, 'UTF-8'); } if ($seevent->city != '') { $sLocation .= ', ' . html_entity_decode($seevent->city, ENT_QUOTES, 'UTF-8'); } $event->setLocation($sLocation); $strStart = Engine_Api::_()->ynevent()->getDateStringForCalendar($seevent->starttime); $strEnd = Engine_Api::_()->ynevent()->getDateStringForCalendar($seevent->endtime); #Set Start time $start = new Google_EventDateTime(); $start->setDateTime($strStart); $event->setStart($start);
protected function createGoogleEventFromTermin($termin, $event = null) { // 'id' => '761', // 'datum' => '10.10.2012', // 'titel' => 'Dynamische Meditation', // 'untertitel' => 'mit Milam Horn --Anm: 0175-86 57 233', // 'zeit' => '06:00 Uhr', // 'url' => '', // 'from' => '1349848800', // 'to' => '1349848801', // 'gId' => '', if (!$event) { $event = new Google_Event(); } $event->setSummary($termin->titel); $untertitel = str_replace('--', '<br/>', $termin->untertitel); $untertitel .= '<hr/>' . str_replace('--', '<br/>', $termin->datum) . ' ' . str_replace('--', '<br/>', $termin->zeit); if ($termin->url) { $untertitel .= '<hr/><a href="' . $termin->url . '">Weitere Informationen</a>'; } $event->setDescription($untertitel); $to = $termin->to; $from = $termin->from; $days = 1; while ($to - $from > 60 * 60 * 24) { $to -= 60 * 60 * 24; $days++; } $start = new Google_EventDateTime(); $start->setDateTime(date('Y-m-d\\TH:i:s', $from)); $start->setTimezone('Europe/Berlin'); $event->setStart($start); $end = new Google_EventDateTime(); $end->setDateTime(date('Y-m-d\\TH:i:s', $to)); $end->setTimezone('Europe/Berlin'); $event->setEnd($end); if ($days > 1) { $freq = "RRULE:FREQ=DAILY;COUNT=" . $days; $event->setRecurrence(array($freq)); } return $event; }
function saveToCalendar($gig, $calendartype = 'private') { // print_r($gig_details = getGigTextDescription($gig, 'calendar')); exit(); // return; //FIXME global $calendars; extract($calendars[$calendartype]); if ($calendartype == 'public' && !$gig['public_description']) { return; } $cal = getGoogleClient(); $event = new Google_Event(); $gig_details = ""; $title = $gig['title']; if ($calendartype == 'private') { if ($gig['type'] == 'gig') { $prefix = 'Proposed'; if ($gig['approved'] == 1) { $prefix = 'Gig'; } else { if ($gig['approved'] == -1) { $prefix = 'Declined'; } } $title = "{$prefix}: {$title}"; } else { if ($gig['tactical']) { $members = gigs_fetchMembers(); $title .= ": " . $members[$gig['tactical']]['name']; } } $gig_details = getGigTextDescription($gig, 'calendar'); if (!$gig[$start_field]) { $start_field = 'band_start'; } } else { $gig_details = $gig['public_description']; } $event->setSummary($title); $event->setLocation($gig['location']); $event->setStart(newDateTime($gig['date'], $gig[$start_field])); $event->setEnd(newDateTime($gig['date'], $gig[$end_field])); $event->setDescription($gig_details); $createdEvent = ''; try { if ($gig[$id_field]) { $event->setSequence(time()); $createdEvent = $cal->events->update($calendar_id, $gig[$id_field], $event); } else { $createdEvent = $cal->events->insert($calendar_id, $event); $google_gig_id = $createdEvent->getId(); dbwrite("update gigs set {$id_field} = '" . dbEscape($google_gig_id) . "' where gig_id = {$gig['gig_id']}"); } } catch (Exception $e) { //trigger_error('Error creating google calendar entry: '.$e->getMessage(), E_USER_ERROR); } if (!$createdEvent) { //trigger_error('Error creating google calendar entry', E_USER_ERROR); } }
/** * Execute the upload of the file to the calendar service * * @param string $sourcefile * @return boolean */ public static function newEvent($summary, $location, $description = null, $datestart = null, $dateend = null) { try { if (empty($datestart)) { $datestart = date('Y-m-d'); } if (empty($dateend)) { $dateend = date('Y-m-d'); } $calendar = Settings::findbyParam('calendar_calendarid'); if ($calendar) { $cal = self::$calendar; if (is_object($cal) && !empty($cal)) { $event = new Google_Event(); $event->setSummary($summary); // Event name $event->setLocation($location); // Event location $start = new Google_EventDateTime(); $start->setDate($datestart); $event->setStart($start); $end = new Google_EventDateTime(); $end->setDate($dateend); $event->setEnd($end); $event->setDescription($description); $createdEvent = $cal->events->insert($calendar, $event); Shineisp_Commons_Utilities::log("The Event has been created!", "plugin_calendar.log"); return true; } } return false; } catch (Exception $e) { return $e->getMessage(); } }