caldav::CalDAV instproc calendar-query (public)

 <instance of caldav::CalDAV[i]> calendar-query root

Defined in /var/www/openacs.org/packages/caldav/tcl/caldav-procs.tcl

Client wants the complete calendar Open: restrict to types

Parameters:
root (required)

Testcases:
REPORT_ios
Source code:
set start ""
set end ""
#
# determine filters
#
set time_range [$root selectNodes -namespaces {c urn:ietf:params:xml:ns:caldav} "//c:time-range"]
#ns_log notice "time-range : $time_range"

if {$time_range ne ""} {
    if {[$time_range hasAttribute start]} {
        set start [$time_range getAttribute start]
        set start [::xo::ical clock_to_oacstime [::xo::ical utc_to_clock $start]]
    }
    if {[$time_range hasAttribute end]} {
        set end [$time_range getAttribute end]
        set end [::xo::ical clock_to_oacstime [::xo::ical utc_to_clock $end]]
    }
}
ns_log notice "calendar-query: start time $start end time $end"

#
# components
#
set time_range [$root selectNodes -namespaces {c urn:ietf:params:xml:ns:caldav} "//c:comp-filter"]
set fetch_vtodos 0
set fetch_vevents 0
foreach x $time_range {
    if {[$x getAttribute name] eq "VEVENT"} {set fetch_vevents 1}
    if {[$x getAttribute name] eq "VTODO"} {set fetch_vtodos 1}
}
set ics_set ""
if {$fetch_vevents} {
    set ics_set [calendars get_calitems -user_id ${:user_id} -start_date $start -end_date $end]
}
return $ics_set
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: