/**
  * This method is called when a user replied to a request to share.
  *
  * This method should return the url of the newly created calendar if the
  * share was accepted.
  *
  * @param string href The sharee who is replying (often a mailto: address)
  * @param int status One of the SharingPlugin::STATUS_* constants
  * @param string $calendarUri The url to the calendar thats being shared
  * @param string $inReplyTo The unique id this message is a response to
  * @param string $summary A description of the reply
  * @return null|string
  */
 public function shareReply($href, $status, $calendarUri, $inReplyTo, $summary = null)
 {
     if (!$this->caldavBackend instanceof Sabre_CalDAV_Backend_SharingSupport) {
         throw new Sabre_DAV_Exception_NotImplemented('Sharing support is not implemented by this backend.');
     }
     return $this->caldavBackend->shareReply($href, $status, $calendarUri, $inReplyTo, $summary);
 }
 /**
  * Creates a new calendar
  *
  * @param string $name
  * @param array $resourceType
  * @param array $properties
  * @return void
  */
 public function createExtendedCollection($name, array $resourceType, array $properties)
 {
     if (!in_array('{urn:ietf:params:xml:ns:caldav}calendar', $resourceType) || count($resourceType) !== 2) {
         throw new Sabre_DAV_Exception_InvalidResourceType('Unknown resourceType for this collection');
     }
     $this->caldavBackend->createCalendar($this->principalInfo['uri'], $name, $properties);
 }
Example #3
0
 /**
  * Performs a calendar-query on the contents of this calendar.
  *
  * The calendar-query is defined in RFC4791 : CalDAV. Using the
  * calendar-query it is possible for a client to request a specific set of
  * object, based on contents of iCalendar properties, date-ranges and
  * iCalendar component types (VTODO, VEVENT).
  *
  * This method should just return a list of (relative) urls that match this
  * query.
  *
  * The list of filters are specified as an array. The exact array is
  * documented by Sabre_CalDAV_CalendarQueryParser.
  *
  * @param array $filters
  * @return array
  */
 public function calendarQuery(array $filters)
 {
     return $this->caldavBackend->calendarQuery($this->calendarInfo['id'], $filters);
 }