16 if (!isset($calendar[
'id'])) {
46 foreach ($this->calendars as
$row) {
47 if ($row[
'principaluri'] == $principalUri) {
73 $this->calendars[] = array_merge([
75 'principaluri' => $principalUri,
76 'uri' => $calendarUri,
77 '{' . CalDAV\
Plugin::NS_CALDAV .
'}supported-calendar-component-set' =>
new CalDAV\Xml\
Property\SupportedCalendarComponentSet([
'VEVENT',
'VTODO']),
102 $propPatch->handleRemaining(
function($props) use ($calendarId) {
104 foreach ($this->calendars as $k =>
$calendar) {
107 foreach ($props as $propName => $propValue) {
108 if (is_null($propValue)) {
109 unset($this->calendars[$k][$propName]);
111 $this->calendars[$k][$propName] = $propValue;
132 foreach ($this->calendars as $k =>
$calendar) {
134 unset($this->calendars[$k]);
164 if (!isset($this->calendarData[$calendarId]))
167 $objects = $this->calendarData[$calendarId];
169 foreach ($objects as $uri => &$object) {
170 $object[
'calendarid'] = $calendarId;
171 $object[
'uri'] = $uri;
172 $object[
'lastmodified'] = null;
196 if (!isset($this->calendarData[$calendarId][$objectUri])) {
199 $object = $this->calendarData[$calendarId][$objectUri];
200 $object[
'calendarid'] = $calendarId;
201 $object[
'uri'] = $objectUri;
202 $object[
'lastmodified'] = null;
217 $this->calendarData[$calendarId][$objectUri] = [
219 'calendarid' => $calendarId,
236 $this->calendarData[$calendarId][$objectUri] = [
238 'calendarid' => $calendarId,
254 unset($this->calendarData[$calendarId][$objectUri]);
This class represents a set of properties that are going to be updated.
getCalendarsForUser($principalUri)
Returns a list of calendars for a principal.
if(!array_key_exists('StateId', $_REQUEST)) $id
__construct(array $calendars=[], array $calendarData=[])
deleteCalendar($calendarId)
Delete a calendar and all it's objects.
createCalendarObject($calendarId, $objectUri, $calendarData)
Creates a new calendar object.
getCalendarObject($calendarId, $objectUri)
Returns information from a single calendar object, based on it's object uri.
updateCalendarObject($calendarId, $objectUri, $calendarData)
Updates an existing calendarobject, based on it's uri.
deleteCalendarObject($calendarId, $objectUri)
Deletes an existing calendar object.
getCalendarObjects($calendarId)
Returns all calendar objects within a calendar object.
static getUUID()
Returns a pseudo-random v4 UUID.
createCalendar($principalUri, $calendarUri, array $properties)
Creates a new calendar for a principal.
const NS_CALDAV
This is the official CalDAV namespace.
Abstract Calendaring backend.
updateCalendar($calendarId, \Sabre\DAV\PropPatch $propPatch)
Updates properties for a calendar.