2 # Request a REPORT which should report only freebusy
5 URL=http://regression.host/caldav.php/user1/home/
6 HEADER=User-Agent: CALDAV compliance testing
7 HEADER=Accept: text/calendar
8 HEADER=Content-Type: text/xml
13 <?xml version="1.0" encoding="utf-8" ?>
14 <C:free-busy-query xmlns:C="urn:ietf:params:xml:ns:caldav">
15 <C:time-range start="20061004T140000Z"
16 end="20070105T220000Z"/>
20 REPLACE=/^DTSTAMP:\d{8}T\d{6}Z\r?$/DTSTAMP:yyyymmddThhmmssZ/
23 SELECT calendar_item.rrule, calendar_item.status,
24 dtstart AT TIME ZONE olson_name AS "a) Start",
25 olson_name AS "b) Location",
26 to_char(calendar_item.dtstart at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "c)UTC Start",
27 to_char(calendar_item.dtend at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "d) UTC End"
28 FROM usr INNER JOIN collection USING (user_no)
29 INNER JOIN caldav_data USING (collection_id)
30 INNER JOIN calendar_item USING(dav_id)
31 LEFT JOIN timezones ON (tz_id=tzid)
32 WHERE caldav_data.dav_name ~ '^/user1/home/'
33 AND collection.is_calendar AND collection.schedule_transp = 'opaque'
34 AND rrule_event_overlaps( dtstart, dtend, rrule, '20061004T140000Z', '20070105T220000Z' )
35 AND caldav_data.caldav_type IN ( 'VEVENT', 'VFREEBUSY' )
36 AND (calendar_item.transp != 'TRANSPARENT' OR calendar_item.transp IS NULL)
37 AND (calendar_item.status != 'CANCELLED' OR calendar_item.status IS NULL)