Warning: strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 370

## CalDAVSyncClient

Description

A class for accessing DAViCal via CalDAV, as a client

Located in /inc/CalDAVSyncClient.php (line 25)

Variable Summary
string $base_url
mixed $body
mixed $calendar_home_set
mixed $calendar_url
mixed $calendar_urls
mixed $entry
mixed $headers
mixed $httpParsedHeaders
mixed $httpRequest
mixed $httpResponseBody
mixed $httpResponseCode
mixed $httpResponseHeaders
mixed $parser
mixed $pass
mixed $port
mixed $principal_url
mixed $protocol
mixed $requestMethod
mixed $server
mixed $user
string $user_agent
mixed $xmlRequest
mixed $xmlResponse
Method Summary
CalDAVSyncClient __construct (string $base_url, string $user, string $pass)
void CalendarHomeSet ([$url $urls = null])
void CalendarMultiget ( $event_hrefs, [ $url = null])
void CalendarUrls ([$urls $urls = null])
array DoCalendarQuery (string $filter, [string $url = ''])
int DoDELETERequest (string $url, [string $etag = null])
void DoGETRequest (string $url)
void DoHEADRequest (string $url)
array DoOptionsRequest ([string $url = null])
void DoPROPFINDRequest (string $url, $props, [ $depth = 0])
string DoPUTRequest (string $url, string $icalendar, [string $etag = null])
string DoRequest ([string $url = null])
void doSyncReport ([ $previous_token = null], [ $url = null])
array DoXMLRequest ( $request_method, string $xml, [string $url = null], string $method)
void FindCalendarHome ([ $recursed = false], string $url)
void FindCalendars ([ $recursed = false])
void FindPrincipal ([string $url = null])
void GetCalendarDetails ([ $url = null])
void GetCollectionETags ([ $url = null])
string GetEntryByHref (string $href)
array GetEntryByUid (uid $uid, [string $relative_url = ''], [string $component_type = 'VEVENT'])
array GetEvents ([timestamp $start = null], [timestamp $finish = null], [string $relative_url = ''])
HTTP GetHttpRequest ()
void GetOKProps (string $nodenum)
HTTP GetResponseBody ()
HTTP GetResponseHeaders ()
array GetTodos (timestamp $start, timestamp $finish, [boolean $completed = false], [boolean $cancelled = false], [string $relative_url = ""])
raw GetXmlRequest ()
raw GetXmlResponse ()
void HrefForProp (string $tagname, [ $i = 0], integer $which)
void HrefForResourcetype (string $tagname, [ $i = 0], integer $which)
void HrefValueInside (string $tagname)
void ParseResponse (string $response)
array ParseResponseHeaders ()
void PrincipalURL ([$url $url = null])
void SetCalendar (string $url)
void SetContentType (string $type)
boolean SetDebug (boolean $new_value)
void SetDepth ([int $depth = '0'])
void SetMatch (bool $match, [string $etag = '*'])
void SetUserAgent ([ $user_agent = null], int $depth)
void Unchunk ()
Variables
Strict Standards: Only variables should be passed by reference in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 712 Warning: strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 370
string $base_url (line 31)

Server, username, password, calendar

- access: protected

mixed $body = "" (line 61)

- access: protected

mixed $calendar_home_set (line 46)

The calendar-home-set we're using

- access: protected

mixed $calendar_url (line 41)

The calendar-URL we're using

- access: protected

mixed $calendar_urls (line 51)

The calendar_urls we have discovered

- access: protected

mixed $entry (line 31)

- access: protected

mixed $headers = array() (line 60)

- access: protected

mixed $httpParsedHeaders (line 68)

- access: protected

mixed $httpRequest = "" (line 63)

- access: protected

mixed $httpResponseBody = "" (line 69)

- access: protected

mixed $httpResponseCode = 0 (line 66)

- access: protected

mixed $httpResponseHeaders = "" (line 67)

- access: protected

mixed $parser (line 71)

- access: protected

mixed $pass (line 31)

- access: protected

mixed $port (line 31)

- access: protected

mixed $principal_url (line 36)

The principal-URL we're using

- access: protected

mixed $protocol (line 31)

- access: protected

mixed $requestMethod = "GET" (line 62)

- access: protected

mixed $server (line 31)

- access: protected

mixed $user (line 31)

- access: protected

string $user_agent = 'DAViCalClient' (line 58)

The useragent which is send to the caldav server

- access: public

mixed $xmlRequest = "" (line 64)

- access: protected

mixed $xmlResponse = "" (line 65)

- access: protected

Methods
Strict Standards: Only variables should be passed by reference in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 712 Warning: strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 370
Constructor __construct (line 85)

Constructor, initialises the class

CalDAVSyncClient __construct (string $base_url, string $user, string $pass)

- string $base_url: The URL for the calendar server
- string $user: The name of the user logging in
- string $pass: The password for that user

CalendarHomeSet (line 528)

Get/Set the calendar-home-set URL

void CalendarHomeSet ([$url $urls = null])

- $url $urls: array of string The calendar-home-set URLs to set

CalendarMultiget (line 798)

Get a bunch of events for a calendar with a calendar-multiget report

void CalendarMultiget ( $event_hrefs, [ $url = null])

- $event_hrefs
- $url

CalendarUrls (line 542)

Get/Set the calendar-home-set URL

void CalendarUrls ([$urls $urls = null])

- $urls $urls: array of string The calendar URLs to set

DoCalendarQuery (line 885)

Given XML for a calendar query, return an array of the events (/todos) in the response. Each event in the array will have a 'href', 'etag' and '$response_type' part, where the 'href' is relative to the calendar and the '$response_type' contains the definition of the calendar data in iCalendar format.

- return: An array of the relative URLs, etags, and events from the server. Each element of the array will be an array with 'href', 'etag' and 'data' elements, corresponding to the URL, the server-supplied etag (which only varies when the data changes) and the calendar data in iCalendar format.

array DoCalendarQuery (string $filter, [string $url = ''])

- string $filter: XML fragment which is the <filter> element of a calendar-query
- string $url: The URL of the calendar, or empty/null to use the 'current' calendar_url

DoDELETERequest (line 476)

DELETE a text/icalendar resource

- return: The HTTP Result Code for the DELETE

int DoDELETERequest (string $url, [string $etag = null])

- string $url: The URL to make the request to
- string $etag: The etag of an existing resource to be deleted, or '*' for any resource at that URL.

DoGETRequest (line 412)

Get a single item from the server.

void DoGETRequest (string $url)

- string $url: The URL to GET

DoHEADRequest (line 424)

Get the HEAD of a single item from the server.

void DoHEADRequest (string $url)

- string $url: The URL to HEAD

DoOptionsRequest (line 374)

Send an OPTIONS request to the server

- return: The allowed options

array DoOptionsRequest ([string $url = null])

- string $url: The URL to make the request to

DoPROPFINDRequest (line 493)

Get a single item from the server.

void DoPROPFINDRequest (string $url, $props, [ $depth = 0])

- string $url: The URL to PROPFIND on
- $props
- $depth

DoPUTRequest (line 440)

PUT a text/icalendar resource, returning the etag

- return: The content of the response from the server

string DoPUTRequest (string $url, string $icalendar, [string $etag = null])

- string $url: The URL to make the request to
- string $icalendar: The iCalendar resource to send to the server
- string $etag: The etag of an existing resource to be overwritten, or '*' for a new resource.

DoRequest (line 273)

Send a request to the server

- return: The content of the response from the server

string DoRequest ([string $url = null])

- string $url: The URL to make the request to

doSyncReport (line 838)
void doSyncReport ([ $previous_token = null], [ $url = null])

- $previous_token
- $url

DoXMLRequest (line 398)

Send an XML request to the server (e.g. PROPFIND, REPORT, MKCALENDAR)

- return: An array of the allowed methods

array DoXMLRequest ( $request_method, string $xml, [string $url = null], string $method)

- string $method: The method (PROPFIND, REPORT, etc) to use with the request
- string $xml: The XML to send along with the request
- string $url: The URL to make the request to
- $request_method

FindCalendarHome (line 675)

Attack the given URL in an attempt to find a principal URL

void FindCalendarHome ([ $recursed = false], string $url)

- string $url: The URL to find the calendar-home-set from
- $recursed

FindCalendars (line 704)

Find the calendars, from the calendar_home_set

void FindCalendars ([ $recursed = false])

- $recursed

FindPrincipal (line 652)

Attack the given URL in an attempt to find a principal URL

void FindPrincipal ([string $url = null])

- string $url: The URL to find the principal-URL from

GetCalendarDetails (line 748)

Find the calendars, from the calendar_home_set

void GetCalendarDetails ([ $url = null])

- $url

GetCollectionETags (line 778)

Get all etags for a calendar

void GetCollectionETags ([ $url = null])

- $url

GetEntryByHref (line 1045)

Get the calendar entry by HREF

- return: The iCalendar of the calendar entry

string GetEntryByHref (string $href)

- string $href: The href from a call to GetEvents or GetTodos etc.

GetEntryByUid (line 1018)

Get the calendar entry by UID

- return: An array of the relative URL, etag, and calendar data returned from DoCalendarQuery() @see DoCalendarQuery()

array GetEntryByUid (uid $uid, [string $relative_url = ''], [string $component_type = 'VEVENT'])

- string $relative_url: The URL relative to the base_url specified when the calendar was opened. Default ''.
- string $component_type: The component type inside the VCALENDAR. Default 'VEVENT'.
- uid $uid

GetEvents (line 942)

Get the events in a range from $start to $finish. The dates should be in the

format yyyymmddThhmmssZ and should be in GMT. The events are returned as an array of event arrays. Each event array will have a 'href', 'etag' and 'event' part, where the 'href' is relative to the calendar and the event contains the definition of the event in iCalendar format.

- return: An array of the relative URLs, etags, and events, returned from DoCalendarQuery() @see DoCalendarQuery()

array GetEvents ([timestamp $start = null], [timestamp $finish = null], [string $relative_url = ''])

- timestamp $start: The start time for the period
- timestamp $finish: The finish time for the period
- string $relative_url: The URL relative to the base_url specified when the calendar was opened. Default ''.

GetHttpRequest (line 230)

Output http request headers

- return: headers

HTTP GetHttpRequest ()
GetOKProps (line 619)

Return the <prop> ... </prop> of a propstat where the status is OK

void GetOKProps (string $nodenum)

- string $nodenum: The node number in the xmlnodes which is the href

GetResponseBody (line 246)

Output http response body

- return: body

HTTP GetResponseBody ()
GetResponseHeaders (line 238)

Output http response headers

- return: headers

HTTP GetResponseHeaders ()
GetTodos (line 978)

Get the todo's in a range from $start to $finish. The dates should be in the

format yyyymmddThhmmssZ and should be in GMT. The events are returned as an array of event arrays. Each event array will have a 'href', 'etag' and 'event' part, where the 'href' is relative to the calendar and the event contains the definition of the event in iCalendar format.

- return: An array of the relative URLs, etags, and events, returned from DoCalendarQuery() @see DoCalendarQuery()

array GetTodos (timestamp $start, timestamp $finish, [boolean $completed = false], [boolean $cancelled = false], [string $relative_url = ""])

- timestamp $start: The start time for the period
- timestamp $finish: The finish time for the period
- boolean $completed: Whether to include completed tasks
- boolean $cancelled: Whether to include cancelled tasks
- string $relative_url: The URL relative to the base_url specified when the calendar was opened. Default ''.

GetXmlRequest (line 254)

Output xml request

- return: xml

raw GetXmlRequest ()
GetXmlResponse (line 262)

Output xml response

- return: xml

raw GetXmlResponse ()
HrefForProp (line 573)

Return the href containing this property. Except only if it's inside a status != 200

void HrefForProp (string $tagname, [ $i = 0], integer $which)

- string $tagname: The tag name of the property to find the href for
- integer $which: Which instance of the tag should we use
- $i

HrefForResourcetype (line 599)

Return the href which has a resourcetype of the specified type

void HrefForResourcetype (string $tagname, [ $i = 0], integer $which)

- string $tagname: The tag name of the resourcetype to find the href for
- integer $which: Which instance of the tag should we use
- $i

HrefValueInside (line 556)

Return the first occurrence of an href inside the named tag.

void HrefValueInside (string $tagname)

- string $tagname: The tag name to find the href inside of

ParseResponse (line 179)

Split response into httpResponse and xmlResponse

void ParseResponse (string $response)

- string $response: Response from server

ParseResponseHeaders (line 205)

Split httpResponseHeaders into an array of headers

- return: of arrays of header lines

array ParseResponseHeaders ()
PrincipalURL (line 515)

Get/Set the Principal URL

void PrincipalURL ([$url $url = null])

- $url $url: string The Principal URL to set

SetCalendar (line 170)

Set the calendar_url we will be using for a while.

void SetCalendar (string $url)

- string $url: The calendar_url

SetContentType (line 161)

Add a Content-type: header.

void SetContentType (string $type)

- string $type: The content type

SetDebug (line 116)

Call this to enable / disable debugging. It will return the prior value of the debugging flag.

- return: The previous value, in case you want to restore it later.

boolean SetDebug (boolean $new_value)

- boolean $new_value: The new value for debugging.

SetDepth (line 142)

Add a Depth: header. Valid values are 0, 1 or infinity

void SetDepth ([int $depth = '0'])

- int $depth: The depth, default to infinity

SetMatch (line 133)

Adds an If-Match or If-None-Match header

void SetMatch (bool $match, [string $etag = '*'])

- bool $match: to Match or Not to Match, that is the question!
- string $etag: The etag to match / not match against.

SetUserAgent (line 151)

Add a Depth: header. Valid values are 1 or infinity

void SetUserAgent ([ $user_agent = null], int $depth)

- int $depth: The depth, default to infinity
- $user_agent

Unchunk (line 339)

Unchunk a chunked response

void Unchunk ()
Warning: strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /usr/share/php/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php on line 370

Documentation generated on Sun, 08 Jul 2012 12:53:47 +0000 by phpDocumentor 1.4.3