12 '{urn:ietf:params:xml:ns:caldav}calendar-query' =>
'Sabre\\CalDAV\\Xml\\Request\CalendarQueryReport',
19<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
24 <c:comp-filter name=
"VCALENDAR" />
31 $calendarQueryReport->properties = [
34 $calendarQueryReport->filters = [
35 'name' =>
'VCALENDAR',
36 'is-not-defined' =>
false,
39 'time-range' =>
false,
56<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
71<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
74 <c:calendar-
data content-type=
"application/json+calendar" version=
"2.0">
75 <c:
expand start=
"20150101T000000Z" end=
"20160101T000000Z" />
79 <c:comp-filter name=
"VCALENDAR">
80 <c:comp-filter name=
"VEVENT">
81 <c:time-range start=
"20150101T000000Z" end=
"20160101T000000Z" />
82 <c:prop-filter name=
"UID" />
83 <c:comp-filter name=
"VALARM">
86 <c:prop-filter name=
"X-PROP">
87 <c:param-filter name=
"X-PARAM" />
88 <c:param-filter name=
"X-PARAM2">
91 <c:param-filter name=
"X-PARAM3">
92 <c:text-match negate-condition=
"yes">hi</c:text-match>
95 <c:prop-filter name=
"X-PROP2">
98 <c:prop-filter name=
"X-PROP3">
99 <c:time-range start=
"20150101T000000Z" end=
"20160101T000000Z" />
101 <c:prop-filter name=
"X-PROP4">
102 <c:text-match>Hello</c:text-match>
112 $calendarQueryReport->version =
'2.0';
113 $calendarQueryReport->contentType =
'application/json+calendar';
114 $calendarQueryReport->properties = [
116 '{urn:ietf:params:xml:ns:caldav}calendar-data',
118 $calendarQueryReport->expand = [
119 'start' =>
new DateTimeImmutable(
'2015-01-01 00:00:00',
new DateTimeZone(
'UTC')),
120 'end' =>
new DateTimeImmutable(
'2016-01-01 00:00:00',
new DateTimeZone(
'UTC')),
122 $calendarQueryReport->filters = [
123 'name' =>
'VCALENDAR',
124 'is-not-defined' =>
false,
128 'is-not-defined' =>
false,
132 'is-not-defined' =>
true,
133 'comp-filters' => [],
134 'prop-filters' => [],
135 'time-range' =>
false,
141 'is-not-defined' =>
false,
142 'time-range' =>
false,
143 'text-match' =>
null,
144 'param-filters' => [],
148 'is-not-defined' =>
false,
149 'time-range' =>
false,
150 'text-match' =>
null,
154 'is-not-defined' =>
false,
155 'text-match' =>
null,
158 'name' =>
'X-PARAM2',
159 'is-not-defined' =>
true,
160 'text-match' =>
null,
163 'name' =>
'X-PARAM3',
164 'is-not-defined' =>
false,
166 'negate-condition' =>
true,
167 'collation' =>
'i;ascii-casemap',
175 'is-not-defined' =>
true,
176 'time-range' =>
false,
177 'text-match' =>
null,
178 'param-filters' => [],
182 'is-not-defined' =>
false,
184 'start' =>
new DateTimeImmutable(
'2015-01-01 00:00:00',
new DateTimeZone(
'UTC')),
185 'end' =>
new DateTimeImmutable(
'2016-01-01 00:00:00',
new DateTimeZone(
'UTC')),
187 'text-match' =>
null,
188 'param-filters' => [],
192 'is-not-defined' =>
false,
193 'time-range' =>
false,
195 'negate-condition' =>
false,
196 'collation' =>
'i;ascii-casemap',
199 'param-filters' => [],
203 'start' =>
new DateTimeImmutable(
'2015-01-01 00:00:00',
new DateTimeZone(
'UTC')),
204 'end' =>
new DateTimeImmutable(
'2016-01-01 00:00:00',
new DateTimeZone(
'UTC')),
208 'prop-filters' => [],
209 'time-range' =>
false,
213 $calendarQueryReport,
226<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
229 <c:calendar-
data content-type=
"application/json+calendar" version=
"2.0">
230 <c:
expand start=
"20150101T000000Z" end=
"20160101T000000Z" />
234 <c:comp-filter name=
"VCALENDAR" />
235 <c:comp-filter name=
"VCALENDAR" />
251<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
254 <c:calendar-
data content-type=
"application/json+calendar" version=
"2.0">
255 <c:
expand start=
"20150101T000000Z" />
259 <c:comp-filter name=
"VCALENDAR" />
275<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
278 <c:calendar-
data content-type=
"application/json+calendar" version=
"2.0">
279 <c:
expand start=
"20150101T000000Z" end=
"20140101T000000Z" />
283 <c:comp-filter name=
"VCALENDAR" />
299<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
305 <c:comp-filter name=
"VCALENDAR">
306 <c:time-range start=
"20150101T000000Z" end=
"20160101T000000Z" />
323<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
329 <c:comp-filter name=
"VCALENDAR">
330 <c:comp-filter name=
"VEVENT">
331 <c:time-range start=
"20150101T000000Z" end=
"20140101T000000Z" />
349<c:calendar-query xmlns:d=
"DAV:" xmlns:c=
"urn:ietf:params:xml:ns:caldav">
355 <c:comp-filter name=
"VCALENDAR">
356 <c:comp-filter name=
"VEVENT">
357 <c:prop-filter name=
"DTSTART">
358 <c:time-range start=
"20150101T000000Z" end=
"20140101T000000Z" />
An exception for terminatinating execution or to throw for unit testing.
testDeserializeDoubleTopCompFilter()
@expectedException \Sabre\DAV\Exception\BadRequest
testDeserializeExpandEndBeforeStart()
@expectedException \Sabre\DAV\Exception\BadRequest
testDeserializeTimeRangeEndBeforeStart()
@expectedException \Sabre\DAV\Exception\BadRequest
testDeserializeTimeRangeOnVCALENDAR()
@expectedException \Sabre\DAV\Exception\BadRequest
testDeserializeNoFilter()
@expectedException Sabre\DAV\Exception\BadRequest
testDeserializeTimeRangePropEndBeforeStart()
@expectedException \Sabre\DAV\Exception\BadRequest
testDeserializeMissingExpandEnd()
@expectedException \Sabre\DAV\Exception\BadRequest
CalendarQueryReport request parser.
parse($xml, array $elementMap=[])