$description .= "\nPhone: \n{$phone}\n\n"; } if (!empty($comments)) { $description .= "\nComments: \n{$comments}\n\n"; } $event->setDescription($description); $defaultFolks = array("*****@*****.**"); foreach ($defaultFolks as $defaultFolk) { $attendee = new Google_Service_Calendar_EventAttendee(); $attendee->setEmail($defaultFolk); $attendees[] = $attendee; } $attendee = new Google_Service_Calendar_EventAttendee(); $attendee->setEmail($email); $attendees[] = $attendee; $event->setAttendees($attendees); $start = new DateTime($date); $start->setTimezone(new DateTimeZone($timezone)); $gstart = new Google_Service_Calendar_EventDateTime(); $gstart->setDateTime($start->format(DateTime::ISO8601)); $gstart->setTimeZone($timezone); $event->setStart($gstart); $end = new DateTime($date); $end->setTimezone(new DateTimeZone($timezone)); $end->add(new DateInterval("PT1H")); $gend = new Google_Service_Calendar_EventDateTime(); $gend->setDateTime($end->format(DateTime::ISO8601)); $gend->setTimeZone($timezone); $event->setEnd($gend); //Next insert it into the calendar $calendarService->events->insert($calendarId, $event);
/** * @param string $calendarId Calendar that has the events * @param string $email Email of calendar to unattend */ public static function unattendAllEvents($calendarId, $email) { $service = self::getService(); $opts = ['fields' => 'items(attendees,id),nextPageToken', 'showDeleted' => true, 'singleEvents' => false]; $pageToken = 1; while ($pageToken) { if ($pageToken !== 1) { $opts['pageToken'] = $pageToken; } $events = $service->events->listEvents($calendarId, $opts); foreach ($events as $event) { $attendees = $event->getAttendees(); $i = self::hasAttendee($attendees, $email); if ($i !== false) { unset($attendees[$i]); $patch = new \Google_Service_Calendar_Event(); $patch->setAttendees($attendees); self::patchEvent($calendarId, $event->id, $patch); } } $pageToken = $events->getNextPageToken(); } }