From 06f35dabd6b8c63c6f0854391bcc881e6ce54b0f Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Thu, 18 Sep 2008 00:12:21 +1200 Subject: [PATCH] Add the API docs into the repository. --- docs/api/awl/caldav/RRule.html | 176 ++ docs/api/awl/caldav/_inc---RRule.php.html | 80 + docs/api/awl/caldav/iCalDate.html | 908 +++++++++ docs/api/blank.html | 13 + docs/api/classtrees_awl.html | 28 + docs/api/classtrees_davical.html | 52 + .../davical/Admin/_htdocs---users.php.html | 193 ++ .../HTTPAuthSession/HTTPAuthSession.html | 360 ++++ .../_inc---HTTPAuthSession.php.html | 69 + .../davical/Principal/CalDAVPrincipal.html | 351 ++++ .../Principal/_inc---CalDAVPrincipal.php.html | 69 + .../davical/RSCDSSession/RSCDSSession.html | 236 +++ docs/api/davical/RSCDSSession/Tools.html | 181 ++ .../RSCDSSession/_htdocs---tools.php.html | 193 ++ .../RSCDSSession/_inc---RSCDSSession.php.html | 192 ++ docs/api/davical/RSCDSUser/RSCDSUser.html | 432 +++++ .../RSCDSUser/_inc---RSCDSUser.php.html | 127 ++ docs/api/davical/Request/CalDAVRequest.html | 887 +++++++++ .../Request/_inc---CalDAVRequest.php.html | 152 ++ .../api/davical/_htdocs---collection.php.html | 166 ++ docs/api/davical/_htdocs---freebusy.php.html | 108 ++ docs/api/davical/_htdocs---help.php.html | 121 ++ docs/api/davical/_htdocs---index.php.html | 137 ++ .../_htdocs---relationship_types.php.html | 166 ++ docs/api/davical/_htdocs---roles.php.html | 136 ++ docs/api/davical/_htdocs---usr.php.html | 169 ++ docs/api/davical/_inc---caldav-LOCK.php.html | 62 + .../_inc---caldav-PUT-functions.php.html | 254 +++ .../_inc---caldav-REPORT-calquery.php.html | 149 ++ .../_inc---caldav-REPORT-freebusy.php.html | 77 + .../_inc---caldav-REPORT-multiget.php.html | 37 + .../_inc---caldav-REPORT-principal.php.html | 78 + docs/api/davical/_inc---check_UTF8.php.html | 125 ++ ...c---davical_configuration_missing.php.html | 76 + docs/api/davical/_inc---freebusy-GET.php.html | 76 + .../davical/_inc---interactive-page.php.html | 61 + .../_inc---other_translated_strings.php.html | 34 + docs/api/davical/_inc---page-footer.php.html | 34 + docs/api/davical/_inc---page-header.php.html | 91 + docs/api/davical/_inc---test-RRULE.php.html | 76 + .../_inc---auth-functions.php.html | 207 ++ .../davical/caldav/_htdocs---caldav.php.html | 300 +++ .../davical/caldav/_htdocs---public.php.html | 179 ++ .../caldav/_inc---caldav-DELETE.php.html | 40 + .../davical/caldav/_inc---caldav-GET.php.html | 68 + .../caldav/_inc---caldav-MKCALENDAR.php.html | 40 + .../caldav/_inc---caldav-OPTIONS.php.html | 40 + .../caldav/_inc---caldav-PROPPATCH.php.html | 40 + .../davical/caldav/_inc---caldav-PUT.php.html | 73 + .../caldav/_inc---caldav-REPORT.php.html | 178 ++ .../davical/ldap/_inc---drivers_ldap.php.html | 218 +++ .../ldap/_inc---drivers_squid_pam.php.html | 147 ++ docs/api/davical/ldap/ldapDrivers.html | 214 +++ docs/api/davical/ldap/squidPamDrivers.html | 139 ++ .../propfind/_inc---caldav-PROPFIND.php.html | 432 +++++ docs/api/elementindex.html | 1677 +++++++++++++++++ docs/api/elementindex_awl.html | 382 ++++ docs/api/elementindex_davical.html | 1430 ++++++++++++++ docs/api/errors.html | 225 +++ docs/api/index.html | 24 + docs/api/li_awl.html | 45 + docs/api/li_davical.html | 233 +++ docs/api/media/banner.css | 33 + docs/api/media/images/AbstractClass.png | Bin 0 -> 620 bytes docs/api/media/images/AbstractClass_logo.png | Bin 0 -> 1232 bytes docs/api/media/images/AbstractMethod.png | Bin 0 -> 696 bytes .../api/media/images/AbstractPrivateClass.png | Bin 0 -> 848 bytes .../images/AbstractPrivateClass_logo.png | Bin 0 -> 1615 bytes .../media/images/AbstractPrivateMethod.png | Bin 0 -> 874 bytes docs/api/media/images/Class.png | Bin 0 -> 570 bytes docs/api/media/images/Class_logo.png | Bin 0 -> 1600 bytes docs/api/media/images/Constant.png | Bin 0 -> 752 bytes docs/api/media/images/Constructor.png | Bin 0 -> 865 bytes docs/api/media/images/Destructor.png | Bin 0 -> 956 bytes docs/api/media/images/Function.png | Bin 0 -> 596 bytes docs/api/media/images/Global.png | Bin 0 -> 712 bytes docs/api/media/images/I.png | Bin 0 -> 148 bytes docs/api/media/images/Index.png | Bin 0 -> 584 bytes docs/api/media/images/Interface.png | Bin 0 -> 1083 bytes docs/api/media/images/Interface_logo.png | Bin 0 -> 1600 bytes docs/api/media/images/L.png | Bin 0 -> 153 bytes docs/api/media/images/Lminus.png | Bin 0 -> 219 bytes docs/api/media/images/Lplus.png | Bin 0 -> 224 bytes docs/api/media/images/Method.png | Bin 0 -> 661 bytes docs/api/media/images/Page.png | Bin 0 -> 592 bytes docs/api/media/images/Page_logo.png | Bin 0 -> 1369 bytes docs/api/media/images/PrivateClass.png | Bin 0 -> 790 bytes docs/api/media/images/PrivateClass_logo.png | Bin 0 -> 1836 bytes docs/api/media/images/PrivateMethod.png | Bin 0 -> 918 bytes docs/api/media/images/PrivateVariable.png | Bin 0 -> 772 bytes docs/api/media/images/StaticMethod.png | Bin 0 -> 661 bytes docs/api/media/images/StaticVariable.png | Bin 0 -> 688 bytes docs/api/media/images/T.png | Bin 0 -> 152 bytes docs/api/media/images/Tminus.png | Bin 0 -> 207 bytes docs/api/media/images/Tplus.png | Bin 0 -> 222 bytes docs/api/media/images/Variable.png | Bin 0 -> 688 bytes docs/api/media/images/blank.png | Bin 0 -> 144 bytes docs/api/media/images/class_folder.png | Bin 0 -> 633 bytes docs/api/media/images/empty.png | Bin 0 -> 90 bytes docs/api/media/images/file.png | Bin 0 -> 462 bytes docs/api/media/images/folder.png | Bin 0 -> 492 bytes docs/api/media/images/function_folder.png | Bin 0 -> 605 bytes docs/api/media/images/next_button.png | Bin 0 -> 657 bytes .../api/media/images/next_button_disabled.png | Bin 0 -> 543 bytes docs/api/media/images/package.png | Bin 0 -> 668 bytes docs/api/media/images/package_folder.png | Bin 0 -> 564 bytes docs/api/media/images/previous_button.png | Bin 0 -> 644 bytes .../media/images/previous_button_disabled.png | Bin 0 -> 541 bytes docs/api/media/images/private_class_logo.png | Bin 0 -> 1836 bytes docs/api/media/images/tutorial.png | Bin 0 -> 431 bytes docs/api/media/images/tutorial_folder.png | Bin 0 -> 572 bytes docs/api/media/images/up_button.png | Bin 0 -> 668 bytes docs/api/media/stylesheet.css | 146 ++ docs/api/packages.html | 34 + docs/api/todolist.html | 21 + 115 files changed, 13497 insertions(+) create mode 100644 docs/api/awl/caldav/RRule.html create mode 100644 docs/api/awl/caldav/_inc---RRule.php.html create mode 100644 docs/api/awl/caldav/iCalDate.html create mode 100644 docs/api/blank.html create mode 100644 docs/api/classtrees_awl.html create mode 100644 docs/api/classtrees_davical.html create mode 100644 docs/api/davical/Admin/_htdocs---users.php.html create mode 100644 docs/api/davical/HTTPAuthSession/HTTPAuthSession.html create mode 100644 docs/api/davical/HTTPAuthSession/_inc---HTTPAuthSession.php.html create mode 100644 docs/api/davical/Principal/CalDAVPrincipal.html create mode 100644 docs/api/davical/Principal/_inc---CalDAVPrincipal.php.html create mode 100644 docs/api/davical/RSCDSSession/RSCDSSession.html create mode 100644 docs/api/davical/RSCDSSession/Tools.html create mode 100644 docs/api/davical/RSCDSSession/_htdocs---tools.php.html create mode 100644 docs/api/davical/RSCDSSession/_inc---RSCDSSession.php.html create mode 100644 docs/api/davical/RSCDSUser/RSCDSUser.html create mode 100644 docs/api/davical/RSCDSUser/_inc---RSCDSUser.php.html create mode 100644 docs/api/davical/Request/CalDAVRequest.html create mode 100644 docs/api/davical/Request/_inc---CalDAVRequest.php.html create mode 100644 docs/api/davical/_htdocs---collection.php.html create mode 100644 docs/api/davical/_htdocs---freebusy.php.html create mode 100644 docs/api/davical/_htdocs---help.php.html create mode 100644 docs/api/davical/_htdocs---index.php.html create mode 100644 docs/api/davical/_htdocs---relationship_types.php.html create mode 100644 docs/api/davical/_htdocs---roles.php.html create mode 100644 docs/api/davical/_htdocs---usr.php.html create mode 100644 docs/api/davical/_inc---caldav-LOCK.php.html create mode 100644 docs/api/davical/_inc---caldav-PUT-functions.php.html create mode 100644 docs/api/davical/_inc---caldav-REPORT-calquery.php.html create mode 100644 docs/api/davical/_inc---caldav-REPORT-freebusy.php.html create mode 100644 docs/api/davical/_inc---caldav-REPORT-multiget.php.html create mode 100644 docs/api/davical/_inc---caldav-REPORT-principal.php.html create mode 100644 docs/api/davical/_inc---check_UTF8.php.html create mode 100644 docs/api/davical/_inc---davical_configuration_missing.php.html create mode 100644 docs/api/davical/_inc---freebusy-GET.php.html create mode 100644 docs/api/davical/_inc---interactive-page.php.html create mode 100644 docs/api/davical/_inc---other_translated_strings.php.html create mode 100644 docs/api/davical/_inc---page-footer.php.html create mode 100644 docs/api/davical/_inc---page-header.php.html create mode 100644 docs/api/davical/_inc---test-RRULE.php.html create mode 100644 docs/api/davical/authentication/_inc---auth-functions.php.html create mode 100644 docs/api/davical/caldav/_htdocs---caldav.php.html create mode 100644 docs/api/davical/caldav/_htdocs---public.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-DELETE.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-GET.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-MKCALENDAR.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-OPTIONS.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-PROPPATCH.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-PUT.php.html create mode 100644 docs/api/davical/caldav/_inc---caldav-REPORT.php.html create mode 100644 docs/api/davical/ldap/_inc---drivers_ldap.php.html create mode 100644 docs/api/davical/ldap/_inc---drivers_squid_pam.php.html create mode 100644 docs/api/davical/ldap/ldapDrivers.html create mode 100644 docs/api/davical/ldap/squidPamDrivers.html create mode 100644 docs/api/davical/propfind/_inc---caldav-PROPFIND.php.html create mode 100644 docs/api/elementindex.html create mode 100644 docs/api/elementindex_awl.html create mode 100644 docs/api/elementindex_davical.html create mode 100644 docs/api/errors.html create mode 100644 docs/api/index.html create mode 100644 docs/api/li_awl.html create mode 100644 docs/api/li_davical.html create mode 100644 docs/api/media/banner.css create mode 100644 docs/api/media/images/AbstractClass.png create mode 100644 docs/api/media/images/AbstractClass_logo.png create mode 100644 docs/api/media/images/AbstractMethod.png create mode 100644 docs/api/media/images/AbstractPrivateClass.png create mode 100644 docs/api/media/images/AbstractPrivateClass_logo.png create mode 100644 docs/api/media/images/AbstractPrivateMethod.png create mode 100644 docs/api/media/images/Class.png create mode 100644 docs/api/media/images/Class_logo.png create mode 100644 docs/api/media/images/Constant.png create mode 100644 docs/api/media/images/Constructor.png create mode 100644 docs/api/media/images/Destructor.png create mode 100644 docs/api/media/images/Function.png create mode 100644 docs/api/media/images/Global.png create mode 100644 docs/api/media/images/I.png create mode 100644 docs/api/media/images/Index.png create mode 100644 docs/api/media/images/Interface.png create mode 100644 docs/api/media/images/Interface_logo.png create mode 100644 docs/api/media/images/L.png create mode 100644 docs/api/media/images/Lminus.png create mode 100644 docs/api/media/images/Lplus.png create mode 100644 docs/api/media/images/Method.png create mode 100644 docs/api/media/images/Page.png create mode 100644 docs/api/media/images/Page_logo.png create mode 100644 docs/api/media/images/PrivateClass.png create mode 100644 docs/api/media/images/PrivateClass_logo.png create mode 100644 docs/api/media/images/PrivateMethod.png create mode 100644 docs/api/media/images/PrivateVariable.png create mode 100644 docs/api/media/images/StaticMethod.png create mode 100644 docs/api/media/images/StaticVariable.png create mode 100644 docs/api/media/images/T.png create mode 100644 docs/api/media/images/Tminus.png create mode 100644 docs/api/media/images/Tplus.png create mode 100644 docs/api/media/images/Variable.png create mode 100644 docs/api/media/images/blank.png create mode 100644 docs/api/media/images/class_folder.png create mode 100644 docs/api/media/images/empty.png create mode 100644 docs/api/media/images/file.png create mode 100644 docs/api/media/images/folder.png create mode 100644 docs/api/media/images/function_folder.png create mode 100644 docs/api/media/images/next_button.png create mode 100644 docs/api/media/images/next_button_disabled.png create mode 100644 docs/api/media/images/package.png create mode 100644 docs/api/media/images/package_folder.png create mode 100644 docs/api/media/images/previous_button.png create mode 100644 docs/api/media/images/previous_button_disabled.png create mode 100644 docs/api/media/images/private_class_logo.png create mode 100644 docs/api/media/images/tutorial.png create mode 100644 docs/api/media/images/tutorial_folder.png create mode 100644 docs/api/media/images/up_button.png create mode 100644 docs/api/media/stylesheet.css create mode 100644 docs/api/packages.html create mode 100644 docs/api/todolist.html diff --git a/docs/api/awl/caldav/RRule.html b/docs/api/awl/caldav/RRule.html new file mode 100644 index 00000000..0be1c518 --- /dev/null +++ b/docs/api/awl/caldav/RRule.html @@ -0,0 +1,176 @@ + + + + + + Docs For Class RRule + + + + +
+

 Class RRule

+ + +
+
Description
+ +
+ +

A Class for handling Events on a calendar which repeat

+

Here's the spec, from RFC2445:

At this point we are going to restrict ourselves to parts of the RRULE specification seen in the wild. And by "in the wild" I don't include within people's timezone definitions. We always convert time zones to canonical names and assume the lower level libraries can do a better job with them than we can.

We will concentrate on: FREQ=(YEARLY|MONTHLY|WEEKLY|DAILY) UNTIL= COUNT= INTERVAL= BYDAY= BYMONTHDAY= BYSETPOS= WKST= BYYEARDAY= BYWEEKNO= BYMONTH=

+

+ Located in /inc/RRule.php (line 675) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + RRule + RRule + ( $start,  $rrule) +
+
+  + void + &GetNext + () +
+
+  + void + WithinScope + ( $base,  $relative_days) +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor RRule (line 707) +
+ + +

The constructor takes a start date and an RRULE definition. Both of these follow the iCalendar standard.

+ +
+ RRule + + RRule + + ( $start,  $rrule) +
+ +
    +
  • + + $start
  • +
  • + + $rrule
  • +
+ + +
+ +
+ +
+ + GetNext (line 818) +
+ + +

This is most of the meat of the RRULE processing, where we find the next date.

+

We maintain an

+ +
+ void + + &GetNext + + () +
+ + + +
+ +
+ +
+ + WithinScope (line 758) +
+ + +

Processes the array of $relative_days to $base and removes any which are not within the scope of our rule.

+ +
+ void + + WithinScope + + ( $base,  $relative_days) +
+ +
    +
  • + + $base
  • +
  • + + $relative_days
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/awl/caldav/_inc---RRule.php.html b/docs/api/awl/caldav/_inc---RRule.php.html new file mode 100644 index 00000000..8c2e1ba5 --- /dev/null +++ b/docs/api/awl/caldav/_inc---RRule.php.html @@ -0,0 +1,80 @@ + + + + + + Docs for page RRule.php + + + + +
+

File/inc/RRule.php

+ + +
+
Description
+ +
+ +

Class for parsing RRule and getting us the dates

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + + + + + +
ClassDescription
+  class + iCalDate + + A Class for handling dates in iCalendar format. We do make the simplifying assumption that all date handling in here is normalised to GMT. One day we might provide some functions to do that, but for now it is done externally. +
+  class + RRule + + A Class for handling Events on a calendar which repeat +
+
+
+ + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/awl/caldav/iCalDate.html b/docs/api/awl/caldav/iCalDate.html new file mode 100644 index 00000000..67105d75 --- /dev/null +++ b/docs/api/awl/caldav/iCalDate.html @@ -0,0 +1,908 @@ + + + + + + Docs For Class iCalDate + + + + +
+

 Class iCalDate

+ + +
+
Description
+ +
+ +

A Class for handling dates in iCalendar format. We do make the simplifying assumption that all date handling in here is normalised to GMT. One day we might provide some functions to do that, but for now it is done externally.

+

+ Located in /inc/RRule.php (line 21) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + iCalDate + iCalDate + ( $input) +
+
+  + void + AddDays + ( $dd) +
+
+  + void + AddDuration + ( $duration) +
+
+  + void + AddMonths + ( $mo) +
+
+  + array + &ApplyBySetPos + (string $bysplist, string $set) +
+
+  + string + DateDifference + (date $from) +
+
+  + void + DaysInMonth + ([ $mo = false], [ $yy = false]) +
+
+  + array + GetMonthByDay + (string $byday) +
+
+  + array + GetMonthByMonthDay + (string $bymonthday) +
+
+  + array + GetWeekByDay + (string $byday) +
+
+  + boolean + GreaterThan + (string $lesser) +
+
+  + boolean + LessThan + (string $greater) +
+
+  + array + &MonthDays + (string $dow_first, string $days_in_month, string $dayspec) +
+
+  + void + Render + ([ $fmt = 'Y-m-d H:i:s']) +
+
+  + void + SetEpochDate + ( $input) +
+
+  + void + SetGMTDate + ( $input) +
+
+  + void + SetLocalDate + ( $input) +
+
+  + void + SetMonthDay + ( $dd) +
+
+  + void + SetWeekStart + () +
+
+  + boolean + TestByMonth + (string $monthlist) +
+
+  + void + _EpochFromParts + () +
+
+  + void + _GMTEpochFromParts + () +
+
+  + void + _GMTTextFromEpoch + () +
+
+  + void + _PartsFromText + () +
+
+  + void + _TextFromEpoch + () +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor iCalDate (line 50) +
+ + +

The constructor takes either an iCalendar date, a text string formatted as an iCalendar date, or epoch seconds.

+ +
+ iCalDate + + iCalDate + + ( $input) +
+ +
    +
  • + + $input
  • +
+ + +
+ +
+ +
+ + AddDays (line 254) +
+ + +

Add some integer number of days to a date

+ +
+ void + + AddDays + + ( $dd) +
+ +
    +
  • + + $dd
  • +
+ + +
+ +
+ +
+ + AddDuration (line 282) +
+ + +

Add duration

+ +
+ void + + AddDuration + + ( $duration) +
+ +
    +
  • + + $duration
  • +
+ + +
+ +
+ +
+ + AddMonths (line 226) +
+ + +

Add some number of months to a date

+ +
+ void + + AddMonths + + ( $mo) +
+ +
    +
  • + + $mo
  • +
+ + +
+ +
+ +
+ + ApplyBySetPos (line 547) +
+ + +

Given set position descriptions like '1', '3', '11', '-3' or '-1' and a set, return the subset matching the list of set positions.

+
    +
  • return: The subset which matches.
  • +
+ +
+ array + + &ApplyBySetPos + + (string $bysplist, string $set) +
+ +
    +
  • + string + $bysplist: The list of set positions.
  • +
  • + string + $set: The set of days that we will apply the positions to.
  • +
+ + +
+ +
+ +
+ + DateDifference (line 318) +
+ + +

Produce an iCalendar format DURATION for the difference between this an another iCalDate

+
    +
  • return: The date difference, as an iCalendar duration format
  • +
+ +
+ string + + DateDifference + + (date $from) +
+ +
    +
  • + date + $from: The start of the period
  • +
+ + +
+ +
+ +
+ + DaysInMonth (line 177) +
+ + +

No of days in a month 1(Jan) - 12(Dec)

+ +
+ void + + DaysInMonth + + ([ $mo = false], [ $yy = false]) +
+ +
    +
  • + + $mo
  • +
  • + + $yy
  • +
+ + +
+ +
+ +
+ + GetMonthByDay (line 401) +
+ + +

Applies any BYDAY to the month to return a set of days

+
    +
  • return: An array of the day numbers for the month which meet the rule.
  • +
+ +
+ array + + GetMonthByDay + + (string $byday) +
+ +
    +
  • + string + $byday: The BYDAY rule
  • +
+ + +
+ +
+ +
+ + GetMonthByMonthDay (line 422) +
+ + +

Applies any BYMONTHDAY to the month to return a set of days

+
    +
  • return: An array of the day numbers for the month which meet the rule.
  • +
+ +
+ array + + GetMonthByMonthDay + + (string $bymonthday) +
+ +
    +
  • + string + $bymonthday: The BYMONTHDAY rule
  • +
+ + +
+ +
+ +
+ + GetWeekByDay (line 441) +
+ + +

Applies any BYDAY to the week to return a set of days

+
    +
  • return: An array of the day numbers for the week which meet the rule.
  • +
+ +
+ array + + GetWeekByDay + + (string $byday) +
+ +
    +
  • + string + $byday: The BYDAY rule
  • +
+ + +
+ +
+ +
+ + GreaterThan (line 462) +
+ + +

Test if $this is greater than the date parameter

+
    +
  • return: True if $this > $lesser
  • +
+ +
+ boolean + + GreaterThan + + (string $lesser) +
+ +
    +
  • + string + $lesser: The other date, as a local time string
  • +
+ + +
+ +
+ +
+ + LessThan (line 477) +
+ + +

Test if $this is less than the date parameter

+
    +
  • return: True if $this < $greater
  • +
+ +
+ boolean + + LessThan + + (string $greater) +
+ +
    +
  • + string + $greater: The other date, as a local time string
  • +
+ + +
+ +
+ +
+ + MonthDays (line 496) +
+ + +

Given a MonthDays string like "1MO", "-2WE" return an integer day of the month.

+
    +
  • return: An array of the day numbers for the month which meet the rule.
  • +
+ +
+ array + + &MonthDays + + (string $dow_first, string $days_in_month, string $dayspec) +
+ +
    +
  • + string + $dow_first: The day of week of the first of the month.
  • +
  • + string + $days_in_month: The number of days in the month.
  • +
  • + string + $dayspec: The specification for a month day (or days) which we parse.
  • +
+ + +
+ +
+ +
+ + Render (line 169) +
+ + +

Set the day of week used for calculation of week starts

+ +
+ void + + Render + + ([ $fmt = 'Y-m-d H:i:s']) +
+ +
    +
  • + + $fmt
  • +
+ + +
+ +
+ +
+ + SetEpochDate (line 103) +
+ + +

Set the date from an epoch

+ +
+ void + + SetEpochDate + + ( $input) +
+ +
    +
  • + + $input
  • +
+ + +
+ +
+ +
+ + SetGMTDate (line 83) +
+ + +

Set the date from a text string

+ +
+ void + + SetGMTDate + + ( $input) +
+ +
    +
  • + + $input
  • +
+ + +
+ +
+ +
+ + SetLocalDate (line 93) +
+ + +

Set the date from a text string

+ +
+ void + + SetLocalDate + + ( $input) +
+ +
    +
  • + + $input
  • +
+ + +
+ +
+ +
+ + SetMonthDay (line 214) +
+ + +

Set the day in the month to what we have been given

+ +
+ void + + SetMonthDay + + ( $dd) +
+ +
    +
  • + + $dd
  • +
+ + +
+ +
+ +
+ + SetWeekStart (line 160) +
+ + +

Set the day of week used for calculation of week starts

+ +
+ void + + SetWeekStart + + () +
+ + + +
+ +
+ +
+ + TestByMonth (line 389) +
+ + +

Test to see if our _mo matches something in the list of months we have received.

+
    +
  • return: Whether this date falls within one of those months.
  • +
+ +
+ boolean + + TestByMonth + + (string $monthlist) +
+ +
    +
  • + string + $monthlist: A comma-separated list of months.
  • +
+ + +
+ +
+ +
+ + _EpochFromParts (line 151) +
+ + +

Given a local text date, convert it to an epoch

+ +
+ void + + _EpochFromParts + + () +
+ + + +
+ +
+ +
+ + _GMTEpochFromParts (line 142) +
+ + +

Given a GMT text date, convert it to an epoch

+ +
+ void + + _GMTEpochFromParts + + () +
+ + + +
+ +
+ +
+ + _GMTTextFromEpoch (line 121) +
+ + +

Given a GMT epoch date, convert it to text

+ +
+ void + + _GMTTextFromEpoch + + () +
+ + + +
+ +
+ +
+ + _PartsFromText (line 129) +
+ + +

Given a text date, convert it to parts

+ +
+ void + + _PartsFromText + + () +
+ + + +
+ +
+ +
+ + _TextFromEpoch (line 113) +
+ + +

Given an epoch date, convert it to text

+ +
+ void + + _TextFromEpoch + + () +
+ + + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/blank.html b/docs/api/blank.html new file mode 100644 index 00000000..d1b76446 --- /dev/null +++ b/docs/api/blank.html @@ -0,0 +1,13 @@ + + + DAViCal + + + + +

DAViCal

+Welcome to davical!
+
+This documentation was generated by phpDocumentor v1.3.2
+ + \ No newline at end of file diff --git a/docs/api/classtrees_awl.html b/docs/api/classtrees_awl.html new file mode 100644 index 00000000..fd09c2f6 --- /dev/null +++ b/docs/api/classtrees_awl.html @@ -0,0 +1,28 @@ + + + + + + + + + + + + +

+ +

+

Root class iCalDate

+ + +

Root class RRule

+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+ + \ No newline at end of file diff --git a/docs/api/classtrees_davical.html b/docs/api/classtrees_davical.html new file mode 100644 index 00000000..f7a04152 --- /dev/null +++ b/docs/api/classtrees_davical.html @@ -0,0 +1,52 @@ + + + + + + + + + + + + +

+ +

+

Root class CalDAVPrincipal

+ + +

Root class CalDAVRequest

+ + +

Root class HTTPAuthSession

+ + +

Root class ldapDrivers

+ + +

Root class squidPamDrivers

+ + +

Root class Tools

+ + +

Root class Session

+ + +

Root class User

+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+ + \ No newline at end of file diff --git a/docs/api/davical/Admin/_htdocs---users.php.html b/docs/api/davical/Admin/_htdocs---users.php.html new file mode 100644 index 00000000..6aa3524f --- /dev/null +++ b/docs/api/davical/Admin/_htdocs---users.php.html @@ -0,0 +1,193 @@ + + + + + + Docs for page users.php + + + + +
+

File/htdocs/users.php

+ + +
+
Description
+ +
+ +

Display a list of all users

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-header.php) + (line 75) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 79) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 12) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 38) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 11) + +
+ + +

Display a list of all users

+ + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 15) + +
+ + + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + translate_relationship_list (line 22) +
+ + +

Translate relationship names in the relationship_list for each user. See the documentation for classBrowser::BrowserColumn for the definition of the hook function parameters.

+
+ void + + translate_relationship_list + + ( $value,  $field,  $row) +
+ +
    +
  • + + $value
  • +
  • + + $field
  • +
  • + + $row
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/HTTPAuthSession/HTTPAuthSession.html b/docs/api/davical/HTTPAuthSession/HTTPAuthSession.html new file mode 100644 index 00000000..8ac800a7 --- /dev/null +++ b/docs/api/davical/HTTPAuthSession/HTTPAuthSession.html @@ -0,0 +1,360 @@ + + + + + + Docs For Class HTTPAuthSession + + + + +
+

 Class HTTPAuthSession

+ + +
+
Description
+ +
+ +

A Class for handling a session using HTTP Basic Authentication

+

+ Located in /inc/HTTPAuthSession.php (line 17) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + HTTPAuthSession + HTTPAuthSession + () +
+
+  + boolean + AllowedTo + (string $whatever) +
+
+  + void + AssignSessionDetails + (object $u) +
+
+  + void + AuthFailedResponse + ([string $auth_header = ""]) +
+
+  + void + BasicAuthSession + () +
+
+  + void + CheckPassword + ( $username,  $password) +
+
+  + void + DigestAuthSession + () +
+
+  + void + GetRoles + () +
+
+  + void + ParseDigestHeader + ( $auth_header) +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor HTTPAuthSession (line 50) +
+ + +

The constructor, which just calls the actual type configured

+ +
+ HTTPAuthSession + + HTTPAuthSession + + () +
+ + + +
+ +
+ +
+ + AllowedTo (line 236) +
+ + +

Checks whether a user is allowed to do something.

+

The check is performed to see if the user has that role.

+
    +
  • return: Whether or not the user has the specified role.
  • +
+ +
+ boolean + + AllowedTo + + (string $whatever) +
+ +
    +
  • + string + $whatever: The role we want to know if the user has.
  • +
+ + +
+ +
+ +
+ + AssignSessionDetails (line 259) +
+ + +

Internal function used to assign the session details to a user's new session.

+ +
+ void + + AssignSessionDetails + + (object $u) +
+ +
    +
  • + object + $u: The user+session object we (probably) read from the database.
  • +
+ + +
+ +
+ +
+ + AuthFailedResponse (line 66) +
+ + +

Authorisation failed, so we send some headers to say so.

+ +
+ void + + AuthFailedResponse + + ([string $auth_header = ""]) +
+ +
    +
  • + string + $auth_header: The WWW-Authenticate header details.
  • +
+ + +
+ +
+ +
+ + BasicAuthSession (line 84) +
+ + +

Handle Basic HTTP Authentication (not secure unless https)

+ +
+ void + + BasicAuthSession + + () +
+ + + +
+ +
+ +
+ + CheckPassword (line 201) +
+ + +

CheckPassword does all of the password checking and returns a user record object, or false if it all ends in tears.

+ +
+ void + + CheckPassword + + ( $username,  $password) +
+ +
    +
  • + + $username
  • +
  • + + $password
  • +
+ + +
+ +
+ +
+ + DigestAuthSession (line 148) +
+ + +

Handle Digest HTTP Authentication (no passwords were harmed in this transaction!)

+

Note that this will not actually work, unless we can either: (A) store the password plain text in the database (B) store an md5( username || realm || password ) in the database

The problem is that potentially means that the administrator can collect the sorts of things people use as passwords. I believe this is quite a bad idea. In scenario (B) while they cannot see the password itself, they can see a hash which only varies when the password varies, so can see when two users have the same password, or can use some of the reverse lookup sites to attempt to reverse the hash. I think this is a less bad idea, but not ideal. Probably better than running Basic auth of HTTP though!

+ +
+ void + + DigestAuthSession + + () +
+ + + +
+ +
+ +
+ + GetRoles (line 244) +
+ + +

Internal function used to get the user's roles from the database.

+ +
+ void + + GetRoles + + () +
+ + + +
+ +
+ +
+ + ParseDigestHeader (line 182) +
+ + +

Parse the HTTP Digest Auth Header

+

  • largely sourced from the PHP documentation

+ +
+ void + + ParseDigestHeader + + ( $auth_header) +
+ +
    +
  • + + $auth_header
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/HTTPAuthSession/_inc---HTTPAuthSession.php.html b/docs/api/davical/HTTPAuthSession/_inc---HTTPAuthSession.php.html new file mode 100644 index 00000000..2d01e495 --- /dev/null +++ b/docs/api/davical/HTTPAuthSession/_inc---HTTPAuthSession.php.html @@ -0,0 +1,69 @@ + + + + + + Docs for page HTTPAuthSession.php + + + + +
+

File/inc/HTTPAuthSession.php

+ + +
+
Description
+ +
+ +

A Class for handling HTTP Authentication

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + HTTPAuthSession + + A Class for handling a session using HTTP Basic Authentication +
+
+
+ + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/Principal/CalDAVPrincipal.html b/docs/api/davical/Principal/CalDAVPrincipal.html new file mode 100644 index 00000000..631b4f10 --- /dev/null +++ b/docs/api/davical/Principal/CalDAVPrincipal.html @@ -0,0 +1,351 @@ + + + + + + Docs For Class CalDAVPrincipal + + + + +
+

 Class CalDAVPrincipal

+ + +
+
Description
+ +
+ +

A class for things to do with a DAV Principal

+

+ Located in /inc/CalDAVPrincipal.php (line 25) +

+ + +

+	
+			
+
+ + + + +
+
Variable Summary
+ +
+
+
+  + Whether + $by_email +
+
+  + RFC4791: + $calendar_home_set +
+
+  + draft-desruisseaux-caldav-sched-03: + $schedule_inbox_url +
+
+  + draft-desruisseaux-caldav-sched-03: + $schedule_outbox_url +
+
+  + The + $url +
+
+
+
+ + +
+
Method Summary
+ +
+
+
+  + boolean + CalDAVPrincipal + ([mixed $parameters = null]) +
+
+  + void + InitialiseRecord + (object $usr) +
+
+  + void + UsernameFromPath + (string $path, [array $options = null]) +
+
+
+
+ + +
+
Variables
+ +
+ + +
+ +
+ + + Whether + $by_email + (line 53) + +
+ + +
    +
  • var: or not we are using an e-mail address based URL.
  • +
+ + + + + +
+ +
+ +
+ + + RFC4791: + $calendar_home_set + (line 36) + +
+ + +
    +
  • var: Identifies the URL(s) of any WebDAV collections that contain calendar collections owned by the associated principal resource.
  • +
+ + + + + +
+ +
+ +
+ + + draft-desruisseaux-caldav-sched-03: + $schedule_inbox_url + (line 42) + +
+ + +
    +
  • var: Identify the URL of the scheduling Inbox collection owned by the associated principal resource.
  • +
+ + + + + +
+ +
+ +
+ + + draft-desruisseaux-caldav-sched-03: + $schedule_outbox_url + (line 48) + +
+ + +
    +
  • var: Identify the URL of the scheduling Outbox collection owned by the associated principal resource.
  • +
+ + + + + +
+ +
+ +
+ + + The + $url + (line 30) + +
+ + +
    +
  • var: home URL of the principal
  • +
+ + + + + +
+ +
+
+ + +
+
Methods
+ +
+ + +
+ +
+ + Constructor CalDAVPrincipal (line 63) +
+ + +

Constructor

+
    +
  • return: Whether we actually read data from the DB to initialise the record.
  • +
+ +
+ boolean + + CalDAVPrincipal + + ([mixed $parameters = null]) +
+ +
    +
  • + mixed + $parameters: If null, an empty Principal is created. If it is an integer then that ID is read (if possible). If it is an array then the Principal matching the supplied elements is read.
  • +
+ + +
+ +
+ +
+ + InitialiseRecord (line 103) +
+ + +

Initialise the Principal object from a $usr record from the DB.

+ +
+ void + + InitialiseRecord + + (object $usr) +
+ +
    +
  • + object + $usr: The usr record from the DB.
  • +
+ + +
+ +
+ +
+ + UsernameFromPath (line 134) +
+ + +

Work out the username, based on elements of the path.

+ +
+ void + + UsernameFromPath + + (string $path, [array $options = null]) +
+ +
    +
  • + string + $path: The path to be used.
  • +
  • + array + $options: The request options, controlling whether e-mail paths are allowed.
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/Principal/_inc---CalDAVPrincipal.php.html b/docs/api/davical/Principal/_inc---CalDAVPrincipal.php.html new file mode 100644 index 00000000..6329cd28 --- /dev/null +++ b/docs/api/davical/Principal/_inc---CalDAVPrincipal.php.html @@ -0,0 +1,69 @@ + + + + + + Docs for page CalDAVPrincipal.php + + + + +
+

File/inc/CalDAVPrincipal.php

+ + +
+
Description
+ +
+ +

An object representing a DAV 'Principal'

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + CalDAVPrincipal + + A class for things to do with a DAV Principal +
+
+
+ + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSSession/RSCDSSession.html b/docs/api/davical/RSCDSSession/RSCDSSession.html new file mode 100644 index 00000000..652683fc --- /dev/null +++ b/docs/api/davical/RSCDSSession/RSCDSSession.html @@ -0,0 +1,236 @@ + + + + + + Docs For Class RSCDSSession + + + + +
+

 Class RSCDSSession

+ + +
+
Description
+ +
+ +

A class for creating and holding session information.

+

+ Located in /inc/RSCDSSession.php (line 50) +

+ + +
Session
+   |
+   --RSCDSSession
+ +
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + RSCDSSession + RSCDSSession + ([string $sid = ""]) +
+
+  + void + AssignSessionDetails + (object $u) +
+
+  + void + GetRelationships + () +
+
+  + void + GetRoles + () +
+
+  + boolean + LoginRequired + ([string $roles = ""]) +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor RSCDSSession (line 61) +
+ + +

Create a new RSCDSSession object.

+

We create a Session and extend it with some additional useful RSCDS related information.

+ +
+ RSCDSSession + + RSCDSSession + + ([string $sid = ""]) +
+ +
    +
  • + string + $sid: A session identifier.
  • +
+ + +
+ +
+ +
+ + AssignSessionDetails (line 70) +
+ + +

Internal function used to assign the session details to a user's new session.

+ +
+ void + + AssignSessionDetails + + (object $u) +
+ +
    +
  • + object + $u: The user+session object we (probably) read from the database.
  • +
+ + +
+ +
+ +
+ + GetRelationships (line 98) +
+ + +

Method used to get the user's relationships

+ +
+ void + + GetRelationships + + () +
+ + + +
+ +
+ +
+ + GetRoles (line 83) +
+ + +

Method used to get the user's roles

+ +
+ void + + GetRoles + + () +
+ + + +
+ +
+ +
+ + LoginRequired (line 120) +
+ + +

Checks that this user is logged in, and presents a login screen if they aren't.

+

The function can optionally confirm whether they are a member of one of a list of roles, and deny access if they are not a member of any of them.

+
    +
  • return: Whether or not the user is logged in and is a member of one of the required roles.
  • +
+ +
+ boolean + + LoginRequired + + ([string $roles = ""]) +
+ +
    +
  • + string + $roles: The list of roles that the user must be a member of one of to be allowed to proceed.
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSSession/Tools.html b/docs/api/davical/RSCDSSession/Tools.html new file mode 100644 index 00000000..f5328afc --- /dev/null +++ b/docs/api/davical/RSCDSSession/Tools.html @@ -0,0 +1,181 @@ + + + + + + Docs For Class Tools + + + + +
+

 Class Tools

+ + +
+
Description
+ +
+ +

+ Located in /htdocs/tools.php (line 36) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + void + importFromDirectory + () +
+
+  + void + render + () +
+
+  + void + renderImportFromDirectory + () +
+
+  + void + renderSyncLDAP + () +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + importFromDirectory (line 97) +
+ + + +
+ void + + importFromDirectory + + () +
+ + + +
+ +
+ +
+ + render (line 38) +
+ + + +
+ void + + render + + () +
+ + + +
+ +
+ +
+ + renderImportFromDirectory (line 70) +
+ + + +
+ void + + renderImportFromDirectory + + () +
+ + + +
+ +
+ +
+ + renderSyncLDAP (line 46) +
+ + + +
+ void + + renderSyncLDAP + + () +
+ + + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSSession/_htdocs---tools.php.html b/docs/api/davical/RSCDSSession/_htdocs---tools.php.html new file mode 100644 index 00000000..b78af666 --- /dev/null +++ b/docs/api/davical/RSCDSSession/_htdocs---tools.php.html @@ -0,0 +1,193 @@ + + + + + + Docs for page tools.php + + + + +
+

File/htdocs/tools.php

+ + +
+
Description
+ +
+ +

Tools for manipulating calendars

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + Tools + + +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-header.php) + (line 32) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 154) + +
+ + + +
+ +
+ +
+  + + require_once + ("DataEntry.php") + (line 16) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 12) + +
+ + +

Tools for manipulating calendars

+ + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 17) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 18) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 13) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSSession/_inc---RSCDSSession.php.html b/docs/api/davical/RSCDSSession/_inc---RSCDSSession.php.html new file mode 100644 index 00000000..a39eb0ed --- /dev/null +++ b/docs/api/davical/RSCDSSession/_inc---RSCDSSession.php.html @@ -0,0 +1,192 @@ + + + + + + Docs for page RSCDSSession.php + + + + +
+

File/inc/RSCDSSession.php

+ + +
+
Description
+ +
+ +

DAViCal extensions to AWL Session handling

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + RSCDSSession + + A class for creating and holding session information. +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ('PgQuery.php') + (line 15) + +
+ + +

All session data is held in the database.

+ +
+ +
+ +
+  + + require_once + ('Session.php') + (line 41) + +
+ + +

We extend the AWL Session class.

+ +
+
+
+ + + +
+
Variables
+ +
+ +
+ +
+ + + resource + $session + The session object is global. + (line 22) + +
+ + +
    +
  • name: $session + The session object is global.
  • +
+ + +
+
+
+ + +
+
Functions
+ +
+ +
+ +
+ + local_session_sql (line 31) +
+ + +
    +
  • todo: Make this a defined constant
  • +
+
+ void + + local_session_sql + + () +
+ + + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSUser/RSCDSUser.html b/docs/api/davical/RSCDSUser/RSCDSUser.html new file mode 100644 index 00000000..369883eb --- /dev/null +++ b/docs/api/davical/RSCDSUser/RSCDSUser.html @@ -0,0 +1,432 @@ + + + + + + Docs For Class RSCDSUser + + + + +
+

 Class RSCDSUser

+ + +
+
Description
+ +
+ +

A class for viewing and maintaining DAViCal User records

+

+ Located in /inc/RSCDSUser.php (line 24) +

+ + +
User
+   |
+   --RSCDSUser
+ +
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + RSCDSUser + RSCDSUser + ( $id, [ $prefix = ""]) +
+
+  + boolean + AllowedTo + (string $whatever) +
+
+  + void + HandleAction + ( $action) +
+
+  + string + Render + ([ $title = ""]) +
+
+  + string + RenderCollections + ( $ef, [ $title = null]) +
+
+  + string + RenderImportIcs + ( $ef, [ $title = null]) +
+
+  + string + RenderRelationshipsFrom + ( $ef, [ $title = null]) +
+
+  + string + RenderRelationshipsTo + ( $ef, [ $title = null]) +
+
+  + boolean + Validate + () +
+
+  + void + Write + () +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor RSCDSUser (line 30) +
+ + +

Constructor - nothing fancy as yet.

+ +
+ RSCDSUser + + RSCDSUser + + ( $id, [ $prefix = ""]) +
+ +
    +
  • + + $id
  • +
  • + + $prefix
  • +
+ + +
+ +
+ +
+ + AllowedTo (line 279) +
+ + +

Extend parent definition of what the current user is allowed to do

+
    +
  • return: Whether they are allowed to.
  • +
+ +
+ boolean + + AllowedTo + + (string $whatever) +
+ +
    +
  • + string + $whatever: What the user wants to do
  • +
+ + +
+ +
+ +
+ + HandleAction (line 302) +
+ + +

Handle any unusual actions we might invent

+ +
+ void + + HandleAction + + ( $action) +
+ +
    +
  • + + $action
  • +
+ + +
+ +
+ +
+ + Render (line 38) +
+ + +

Render the form / viewer as HTML to show the user

+
    +
  • return: An HTML fragment to display in the page.
  • +
+ +
+ string + + Render + + ([ $title = ""]) +
+ +
    +
  • + + $title
  • +
+ + +
+ +
+ +
+ + RenderCollections (line 232) +
+ + +

Render the user's collections

+
    +
  • return: The string of html to be output
  • +
+ +
+ string + + RenderCollections + + ( $ef, [ $title = null]) +
+ +
    +
  • + + $ef
  • +
  • + + $title
  • +
+ + +
+ +
+ +
+ + RenderImportIcs (line 82) +
+ + +

Render input file to import ics in calendar user

+
    +
  • return: The string of html to be output
  • +
+ +
+ string + + RenderImportIcs + + ( $ef, [ $title = null]) +
+ +
    +
  • + + $ef
  • +
  • + + $title
  • +
+ + +
+ +
+ +
+ + RenderRelationshipsFrom (line 104) +
+ + +

Render the user's relationships to other users & resources

+
    +
  • return: The string of html to be output
  • +
+ +
+ string + + RenderRelationshipsFrom + + ( $ef, [ $title = null]) +
+ +
    +
  • + + $ef
  • +
  • + + $title
  • +
+ + +
+ +
+ +
+ + RenderRelationshipsTo (line 154) +
+ + +

Render the user's relationships to other users & resources

+
    +
  • return: The string of html to be output
  • +
+ +
+ string + + RenderRelationshipsTo + + ( $ef, [ $title = null]) +
+ +
    +
  • + + $ef
  • +
  • + + $title
  • +
+ + +
+ +
+ +
+ + Validate (line 269) +
+ + +

Validate the information the user submitted

+
    +
  • return: Whether the form data validated OK.
  • +
+ +
+ boolean + + Validate + + () +
+ + + +
+ +
+ +
+ + Write (line 332) +
+ + +

Write the record to the file

+ +
+ void + + Write + + () +
+ + + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/RSCDSUser/_inc---RSCDSUser.php.html b/docs/api/davical/RSCDSUser/_inc---RSCDSUser.php.html new file mode 100644 index 00000000..4a297330 --- /dev/null +++ b/docs/api/davical/RSCDSUser/_inc---RSCDSUser.php.html @@ -0,0 +1,127 @@ + + + + + + Docs for page RSCDSUser.php + + + + +
+

File/inc/RSCDSUser.php

+ + +
+
Description
+ +
+ +

User maintain / view with DAViCal specific associated tables

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + RSCDSUser + + A class for viewing and maintaining DAViCal User records +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("User.php") + (line 12) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 13) + +
+ + + +
+ +
+ +
+  + + require_once + ("auth-functions.php") + (line 14) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/Request/CalDAVRequest.html b/docs/api/davical/Request/CalDAVRequest.html new file mode 100644 index 00000000..f0c6027c --- /dev/null +++ b/docs/api/davical/Request/CalDAVRequest.html @@ -0,0 +1,887 @@ + + + + + + Docs For Class CalDAVRequest + + + + +
+

 Class CalDAVRequest

+ + +
+
Description
+ +
+ +

A class for collecting things to do with this request.

+

+ Located in /inc/CalDAVRequest.php (line 27) +

+ + +

+	
+			
+
+ + + + +
+
Variable Summary
+ +
+
+
+  + mixed + $collection_id +
+
+  + mixed + $collection_path +
+
+  + mixed + $depth +
+
+  + mixed + $method +
+
+  + mixed + $options +
+
+  + mixed + $principal +
+
+  + mixed + $raw_post +
+
+  + mixed + $user_agent +
+
+
+
+ + +
+
Method Summary
+ +
+
+
+  + CalDAVRequest + CalDAVRequest + ([ $options = array()]) +
+
+  + void + AllowedTo + (string $activity) +
+
+  + void + DepthRegexTail + () +
+
+  + void + DoResponse + (int $status, [string $message = ""], [ $content_type = "text/plain; charset=\"utf-8\""]) +
+
+  + mixed + FailIfLocked + () +
+
+  + void + GetDepthName + () +
+
+  + void + GetLockDetails + (string $lock_token) +
+
+  + void + GetLockRow + ( $lock_token, string $dav_name) +
+
+  + void + IsCollection + () +
+
+  + void + IsInfiniteDepth + () +
+
+  + void + IsLocked + (string $dav_name) +
+
+  + void + IsPrincipal + () +
+
+  + void + setPermissions + (int $user_no) +
+
+  + array + SupportedPrivileges + () +
+
+  + void + UnsupportedRequest + (array $unsupported) +
+
+  + void + UserFromPath + () +
+
+  + void + ValidateLockToken + (string $lock_token) +
+
+  + void + XMLResponse + (int $status, XMLElement $xmltree) +
+
+
+
+ + +
+
Variables
+ +
+ + +
+ +
+ + + mixed + $collection_id + (line 60) + +
+ + +

The ID of the collection containing this path, or of this path if it is a collection

+ + + + + +
+ +
+ +
+ + + mixed + $collection_path + (line 65) + +
+ + +

The path corresponding to the collection_id

+ + + + + +
+ +
+ +
+ + + mixed + $depth + (line 45) + +
+ + +

The depth parameter from the request headers, coerced into a valid integer: 0, 1 or DEPTH_INFINITY which is defined above. The default is set per various RFCs.

+ + + + + +
+ +
+ +
+ + + mixed + $method + (line 39) + +
+ + +

The HTTP request method: PROPFIND, LOCK, REPORT, OPTIONS, etc...

+ + + + + +
+ +
+ +
+ + + mixed + $options + (line 29) + +
+ + + + + + + +
+ +
+ +
+ + + mixed + $principal + (line 50) + +
+ + +

The 'principal' (user/resource/...) which this request seeks to access

+ + + + + +
+ +
+ +
+ + + mixed + $raw_post + (line 34) + +
+ + +

The raw data sent along with the request

+ + + + + +
+ +
+ +
+ + + mixed + $user_agent + (line 55) + +
+ + +

The user agent making the request.

+ + + + + +
+ +
+
+ + +
+
Methods
+ +
+ + +
+ +
+ + Constructor CalDAVRequest (line 70) +
+ + +

Create a new CalDAVRequest object.

+ +
+ CalDAVRequest + + CalDAVRequest + + ([ $options = array()]) +
+ +
    +
  • + + $options
  • +
+ + +
+ +
+ +
+ + AllowedTo (line 531) +
+ + +

Are we allowed to do the requested activity

+

+------------+------------------------------------------------------+ | METHOD | PRIVILEGES | +------------+------------------------------------------------------+ | MKCALENDAR | DAV:bind | | REPORT | DAV:read or CALDAV:read-free-busy (on all referenced | | | resources) | +------------+------------------------------------------------------+

+ +
+ void + + AllowedTo + + (string $activity) +
+ +
    +
  • + string + $activity: The activity we want to do.
  • +
+ + +
+ +
+ +
+ + DepthRegexTail (line 377) +
+ + +

Returns the tail of a Regex appropriate for this Depth, when appended to

+ +
+ void + + DepthRegexTail + + () +
+ + + +
+ +
+ +
+ + DoResponse (line 610) +
+ + +

Utility function we call when we have a simple status-based response to return to the client. Possibly

+ +
+ void + + DoResponse + + (int $status, [string $message = ""], [ $content_type = "text/plain; charset=\"utf-8\""]) +
+ +
    +
  • + int + $status: The HTTP status code to send.
  • +
  • + string + $message: The friendly text message to send with the response.
  • +
  • + + $content_type
  • +
+ + +
+ +
+ +
+ + FailIfLocked (line 456) +
+ + +

This will either (a) return false if no locks apply, or (b) return the lock_token which the request successfully included to open the lock, or: (c) respond directly to the client with the failure.

+
    +
  • return: false (no lock) or opaquelocktoken (opened lock)
  • +
+ +
+ mixed + + FailIfLocked + + () +
+ + + +
+ +
+ +
+ + GetDepthName (line 368) +
+ + +

Returns the name for this depth: 0, 1, infinity

+ +
+ void + + GetDepthName + + () +
+ + + +
+ +
+ +
+ + GetLockDetails (line 442) +
+ + +

Returns the DB object associated with a lock token, or false.

+ +
+ void + + GetLockDetails + + (string $lock_token) +
+ +
    +
  • + string + $lock_token: The opaquelocktoken which we are looking for
  • +
+ + +
+ +
+ +
+ + GetLockRow (line 388) +
+ + +

Returns the locked row, either from the cache or from the database

+ +
+ void + + GetLockRow + + ( $lock_token, string $dav_name) +
+ +
    +
  • + string + $dav_name: The resource which we want to know the lock status for
  • +
  • + + $lock_token
  • +
+ + +
+ +
+ +
+ + IsCollection (line 491) +
+ + +

Returns true if the URL referenced by this request points at a collection.

+ +
+ void + + IsCollection + + () +
+ + + +
+ +
+ +
+ + IsInfiniteDepth (line 513) +
+ + +

Returns true if the request asked for infinite depth

+ +
+ void + + IsInfiniteDepth + + () +
+ + + +
+ +
+ +
+ + IsLocked (line 336) +
+ + +

Checks whether the resource is locked, returning any lock token, or false

+

FIXME: This logic does not catch all locking scenarios. For example an infinite depth request should check the permissions for all collections and resources within that. At present we only maintain permissions on a per-collection basis though.

+ +
+ void + + IsLocked + + (string $dav_name) +
+ +
    +
  • + string + $dav_name: The resource which we want to know the lock status for
  • +
+ + +
+ +
+ +
+ + IsPrincipal (line 502) +
+ + +

Returns true if the URL referenced by this request points at a principal.

+ +
+ void + + IsPrincipal + + () +
+ + + +
+ +
+ +
+ + setPermissions (line 285) +
+ + +

Permissions are controlled as follows:

+

  1. if the path is '/', the request has read privileges
  2. if the requester is an admin, the request has read/write priviliges
  3. if there is a <user name> component which matches the logged on user + then the request has read/write privileges
  4. otherwise we query the defined relationships between users and use + the minimum privileges returned from that analysis.

+ +
+ void + + setPermissions + + (int $user_no) +
+ +
    +
  • + int + $user_no: The current user number
  • +
+ + +
+ +
+ +
+ + SupportedPrivileges (line 632) +
+ + +

Return an array of what the DAV privileges are that are supported

+
    +
  • return: The supported privileges.
  • +
+ +
+ array + + SupportedPrivileges + + () +
+ + + +
+ +
+ +
+ + UnsupportedRequest (line 575) +
+ + +

Sometimes it's a perfectly formed request, but we just don't do that :-(

+ +
+ void + + UnsupportedRequest + + (array $unsupported) +
+ +
    +
  • + array + $unsupported: An array of the properties we don't support.
  • +
+ + +
+ +
+ +
+ + UserFromPath (line 244) +
+ + +

Work out the user whose calendar we are accessing, based on elements of the path.

+ +
+ void + + UserFromPath + + () +
+ + + +
+ +
+ +
+ + ValidateLockToken (line 414) +
+ + +

Checks to see whether the lock token given matches one of the ones handed in with the request.

+ +
+ void + + ValidateLockToken + + (string $lock_token) +
+ +
    +
  • + string + $lock_token: The opaquelocktoken which we are looking for
  • +
+ + +
+ +
+ +
+ + XMLResponse (line 595) +
+ + +

Send an XML Response. This function will never return.

+ +
+ void + + XMLResponse + + (int $status, XMLElement $xmltree) +
+ +
    +
  • + int + $status: The HTTP status to respond
  • +
  • + XMLElement + $xmltree: An XMLElement tree to be rendered
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/Request/_inc---CalDAVRequest.php.html b/docs/api/davical/Request/_inc---CalDAVRequest.php.html new file mode 100644 index 00000000..812b07cf --- /dev/null +++ b/docs/api/davical/Request/_inc---CalDAVRequest.php.html @@ -0,0 +1,152 @@ + + + + + + Docs for page CalDAVRequest.php + + + + +
+

File/inc/CalDAVRequest.php

+ + +
+
Description
+ +
+ +

Functions that are needed for all CalDAV Requests

+

  • Ascertaining the paths
  • Ascertaining the current user's permission to those paths.
  • Utility functions which we can use to decide whether this + is a permitted activity for this user.

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + CalDAVRequest + + A class for collecting things to do with this request. +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("XMLElement.php") + (line 17) + +
+ + +

Functions that are needed for all CalDAV Requests

+

  • Ascertaining the paths
  • Ascertaining the current user's permission to those paths.
  • Utility functions which we can use to decide whether this + is a permitted activity for this user.

+ + +
+ +
+ +
+  + + require_once + ("CalDAVPrincipal.php") + (line 18) + +
+ + + +
+
+
+ + +
+
Constants
+ +
+ +
+ +
+ + + DEPTH_INFINITY = 9999 + (line 20) + +
+ + + + +
+
+
+ + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---collection.php.html b/docs/api/davical/_htdocs---collection.php.html new file mode 100644 index 00000000..611e69c2 --- /dev/null +++ b/docs/api/davical/_htdocs---collection.php.html @@ -0,0 +1,166 @@ + + + + + + Docs for page collection.php + + + + +
+

File/htdocs/collection.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-header.php) + (line 48) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 13) + +
+ + + +
+ +
+ +
+  + + include + (page-header.php) + (line 12) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 52) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 17) + +
+ + + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 6) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 3) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---freebusy.php.html b/docs/api/davical/_htdocs---freebusy.php.html new file mode 100644 index 00000000..27b6a8df --- /dev/null +++ b/docs/api/davical/_htdocs---freebusy.php.html @@ -0,0 +1,108 @@ + + + + + + Docs for page freebusy.php + + + + +
+

File/htdocs/freebusy.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + (freebusy-GET.php) + (line 22) + +
+ + +

We also allow URLs like .../freebusy.php/user@example.com to work, so long as the e-mail matches a single user whose calendar we have rights to.

+

NOTE: It is OK for there to *be* duplicate e-mail addresses, just so long as we only have read permission (or more) for only one of them.

+ +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + (CalDAVRequest.php) + (line 8) + +
+ + + +
+ +
+ +
+  + + require_once + (HTTPAuthSession.php) + (line 5) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---help.php.html b/docs/api/davical/_htdocs---help.php.html new file mode 100644 index 00000000..80bcf5b0 --- /dev/null +++ b/docs/api/davical/_htdocs---help.php.html @@ -0,0 +1,121 @@ + + + + + + Docs for page help.php + + + + +
+

File/htdocs/help.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-footer.php) + (line 18) + +
+ + + +
+ +
+ +
+  + + include + (page-header.php) + (line 9) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 6) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 3) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---index.php.html b/docs/api/davical/_htdocs---index.php.html new file mode 100644 index 00000000..81b1e21a --- /dev/null +++ b/docs/api/davical/_htdocs---index.php.html @@ -0,0 +1,137 @@ + + + + + + Docs for page index.php + + + + +
+

File/htdocs/index.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + ("../inc/always.php") + (line 10) + +
+ + + +
+ +
+ +
+  + + include + ("./caldav.php") + (line 6) + +
+ + +

If the request is not a GET or POST then they must really want caldav.php!

+ +
+ +
+ +
+  + + include + (RSCDSSession.php) + (line 11) + +
+ + + +
+ +
+ +
+  + + include + (interactive-page.php) + (line 14) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 69) + +
+ + + +
+ +
+ +
+  + + include + (page-header.php) + (line 15) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---relationship_types.php.html b/docs/api/davical/_htdocs---relationship_types.php.html new file mode 100644 index 00000000..617085c8 --- /dev/null +++ b/docs/api/davical/_htdocs---relationship_types.php.html @@ -0,0 +1,166 @@ + + + + + + Docs for page relationship_types.php + + + + +
+

File/htdocs/relationship_types.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-header.php) + (line 98) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 108) + +
+ + + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 6) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 3) + +
+ + + +
+ +
+ +
+  + + require_once + ("DataUpdate.php") + (line 9) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 10) + +
+ + + +
+ +
+ +
+  + + require_once + ("DataEntry.php") + (line 8) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---roles.php.html b/docs/api/davical/_htdocs---roles.php.html new file mode 100644 index 00000000..a672e39d --- /dev/null +++ b/docs/api/davical/_htdocs---roles.php.html @@ -0,0 +1,136 @@ + + + + + + Docs for page roles.php + + + + +
+

File/htdocs/roles.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (page-header.php) + (line 36) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 39) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 3) + +
+ + + +
+ +
+ +
+  + + require_once + ("classBrowser.php") + (line 9) + +
+ + + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 6) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_htdocs---usr.php.html b/docs/api/davical/_htdocs---usr.php.html new file mode 100644 index 00000000..481a8534 --- /dev/null +++ b/docs/api/davical/_htdocs---usr.php.html @@ -0,0 +1,169 @@ + + + + + + Docs for page usr.php + + + + +
+

File/htdocs/usr.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + (caldav-PUT-functions.php) + (line 55) + +
+ + + +
+ +
+ +
+  + + include + (page-footer.php) + (line 94) + +
+ + + +
+ +
+ +
+  + + include + (check_UTF8.php) + (line 52) + +
+ + +

If the user has uploaded a .ics file as a calendar, we fake this out

+

as if it were a "PUT" request against a collection. This is something of a hack. It works though :-)

+ +
+ +
+ +
+  + + include + (page-header.php) + (line 92) + +
+ + +

Handle any actions, such as 'delete_relation'

+ +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + (interactive-page.php) + (line 7) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSSession.php) + (line 3) + +
+ + + +
+ +
+ +
+  + + require_once + (RSCDSUser.php) + (line 9) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-LOCK.php.html b/docs/api/davical/_inc---caldav-LOCK.php.html new file mode 100644 index 00000000..976cb2a1 --- /dev/null +++ b/docs/api/davical/_inc---caldav-LOCK.php.html @@ -0,0 +1,62 @@ + + + + + + Docs for page caldav-LOCK.php + + + + +
+

File/inc/caldav-LOCK.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("XMLElement.php") + (line 10) + +
+ + +

We support both LOCK and UNLOCK methods in this function

+ +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-PUT-functions.php.html b/docs/api/davical/_inc---caldav-PUT-functions.php.html new file mode 100644 index 00000000..c25cbd3b --- /dev/null +++ b/docs/api/davical/_inc---caldav-PUT-functions.php.html @@ -0,0 +1,254 @@ + + + + + + Docs for page caldav-PUT-functions.php + + + + +
+

File/inc/caldav-PUT-functions.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + ("iCalendar.php") + (line 9) + +
+ + +

Check if the user wants to put just one EVENT/TODO or a whole calendar

+

if the collection = calendar = $request_container doesn't exist then create it return true if it's a whole calendar

+ +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + controlRequestContainer (line 42) +
+ + +

Work out the location we are doing the PUT to, and check that we have the rights to do the needful.

+
+ void + + controlRequestContainer + + (string $username, int $user_no, string $path, boolean $caldav_context) +
+ +
    +
  • + string + $username: The name of the destination user
  • +
  • + int + $user_no: The user making the change
  • +
  • + string + $path: The DAV path the resource is bing PUT to
  • +
  • + boolean + $caldav_context: Whether we are responding via CalDAV or interactively
  • +
+ + +
+ +
+ +
+ + import_collection (line 122) +
+ + +

This function will import a whole calendar

+
+ void + + import_collection + + (string $ics_content, int $user_no, string $path, boolean $caldav_context) +
+ +
    +
  • + string + $ics_content: the ics file to import
  • +
  • + int + $user_no: the user wich will receive this ics file
  • +
  • + string + $path: the $path where it will be store such as /user_foo/home/
  • +
  • + boolean + $caldav_context: Whether we are responding via CalDAV or interactively
  • +
+ + +
+ +
+ +
+ + public_events_only (line 91) +
+ + +

Check if this collection should force all events to be PUBLIC.

+
    +
  • return: Return true if public events only are allowed.
  • +
+
+ boolean + + public_events_only + + (string $user_no, string $dav_name) +
+ +
    +
  • + string + $user_no: the user that owns the collection
  • +
  • + string + $dav_name: the collection to check
  • +
+ + +
+ +
+ +
+ + putCalendarResource (line 273) +
+ + +

Put the resource from this request

+
    +
  • return: Either 'INSERT' or 'UPDATE': the type of action that the PUT resulted in
  • +
+
+ string + + putCalendarResource + + ( &$request, int $author, boolean $caldav_context, object $request) +
+ +
    +
  • + object + $request: A reference to the request object
  • +
  • + int + $author: The user_no who wants to put this resource on the server
  • +
  • + boolean + $caldav_context: Whether we are responding via CalDAV or interactively
  • +
  • + + &$request
  • +
+ + +
+ +
+ +
+ + rollback_on_error (line 19) +
+ + +

This function launches an error

+
+ void + + rollback_on_error + + (boolean $caldav_context, int $user_no, string $path, [string $message = ''], [int $error_no = 500]) +
+ +
    +
  • + boolean + $caldav_context: Whether we are responding via CalDAV or interactively
  • +
  • + int + $user_no: the user wich will receive this ics file
  • +
  • + string + $path: the $path where the PUT failed to store such as /user_foo/home/
  • +
  • + string + $message: An optional error message to return to the client
  • +
  • + int + $error_no: An optional value for the HTTP error code
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-REPORT-calquery.php.html b/docs/api/davical/_inc---caldav-REPORT-calquery.php.html new file mode 100644 index 00000000..358d7815 --- /dev/null +++ b/docs/api/davical/_inc---caldav-REPORT-calquery.php.html @@ -0,0 +1,149 @@ + + + + + + Docs for page caldav-REPORT-calquery.php + + + + +
+

File/inc/caldav-REPORT-calquery.php

+ + +
+
Description
+ +
+ +

Build the array of properties to include in the report output

+ +
+
+ + + + + + +
+
Functions
+ +
+ +
+ +
+ + apply_filter (line 57) +
+ + +

While we can construct our SQL to apply some filters in the query, other filters need to be checked against the retrieved record. This is for handling those ones.

+
    +
  • return: True if the check succeeded, false otherwise.
  • +
+
+ boolean + + apply_filter + + ( $filters, string $item, array $filter) +
+ +
    +
  • + array + $filter: An array of XMLElement which is the filter definition
  • +
  • + string + $item: The database row retrieved for this calendar item
  • +
  • + + $filters
  • +
+ + +
+ +
+ +
+ + BuildSqlFilter (line 228) +
+ + +

Build an SQL 'WHERE' clause which implements (parts of) the filter. The elements of the filter which are implemented in the SQL will be removed.

+
    +
  • return: A string suitable for use as an SQL 'WHERE' clause selecting the desired records.
  • +
+
+ string + + BuildSqlFilter + + ( $filter, arrayref &$filter) +
+ +
    +
  • + arrayref + &$filter: A reference to an array of XMLElement defining the filter
  • +
  • + + $filter
  • +
+ + +
+ +
+ +
+ + SqlFilterFragment (line 72) +
+ + +

Process a filter fragment returning an SQL fragment

+
+ void + + SqlFilterFragment + + ( $filter,  $components, [ $property = null], [ $parameter = null]) +
+ +
    +
  • + + $filter
  • +
  • + + $components
  • +
  • + + $property
  • +
  • + + $parameter
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-REPORT-freebusy.php.html b/docs/api/davical/_inc---caldav-REPORT-freebusy.php.html new file mode 100644 index 00000000..4097d792 --- /dev/null +++ b/docs/api/davical/_inc---caldav-REPORT-freebusy.php.html @@ -0,0 +1,77 @@ + + + + + + Docs for page caldav-REPORT-freebusy.php + + + + +
+

File/inc/caldav-REPORT-freebusy.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + ("iCalendar.php") + (line 5) + +
+ + +

Handle the FREE-BUSY-QUERY variant of REPORT

+ +
+ +
+ +
+  + + include_once + ("RRule.php") + (line 6) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-REPORT-multiget.php.html b/docs/api/davical/_inc---caldav-REPORT-multiget.php.html new file mode 100644 index 00000000..a5eda617 --- /dev/null +++ b/docs/api/davical/_inc---caldav-REPORT-multiget.php.html @@ -0,0 +1,37 @@ + + + + + + Docs for page caldav-REPORT-multiget.php + + + + +
+

File/inc/caldav-REPORT-multiget.php

+ + +
+
Description
+ +
+ +
    +
  • TODO: Tidy up namespace handling in the responses.
  • +
+ +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---caldav-REPORT-principal.php.html b/docs/api/davical/_inc---caldav-REPORT-principal.php.html new file mode 100644 index 00000000..beb0b52f --- /dev/null +++ b/docs/api/davical/_inc---caldav-REPORT-principal.php.html @@ -0,0 +1,78 @@ + + + + + + Docs for page caldav-REPORT-principal.php + + + + +
+

File/inc/caldav-REPORT-principal.php

+ + +
+
Description
+ +
+ + +
+
+ + + + + + +
+
Functions
+ +
+ +
+ +
+ + principal_to_xml (line 14) +
+ + +

Return XML for a single Principal (user) from the DB TODO: Refactor this functionality into the CalDAVPrincipal object

+
    +
  • return: An XML document which is the response for the principal
  • +
+
+ string + + principal_to_xml + + (array $properties, string $item) +
+ +
    +
  • + array + $properties: The requested properties for this principal
  • +
  • + string + $item: The user data for this calendar
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---check_UTF8.php.html b/docs/api/davical/_inc---check_UTF8.php.html new file mode 100644 index 00000000..89fce8c4 --- /dev/null +++ b/docs/api/davical/_inc---check_UTF8.php.html @@ -0,0 +1,125 @@ + + + + + + Docs for page check_UTF8.php + + + + +
+

File/inc/check_UTF8.php

+ + +
+
Description
+ +
+ + +
+
+ + + + + + +
+
Functions
+ +
+ +
+ +
+ + check_string (line 211) +
+ + +
+ void + + check_string + + ( $ics) +
+ +
    +
  • + + $ics
  • +
+ + +
+ +
+ +
+ + unicodeToUtf8 (line 179) +
+ + +

Takes an array of ints representing the Unicode characters and returns a UTF-8 string. Astral planes are supported ie. the ints in the input can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.

+

Returns false if the input array contains ints that represent surrogates or are outside the Unicode range.

+
+ void + + unicodeToUtf8 + + ( &$arr) +
+ +
    +
  • + + &$arr
  • +
+ + +
+ +
+ +
+ + utf8ToUnicode (line 59) +
+ + +

Takes an UTF-8 string and returns an array of ints representing the Unicode characters. Astral planes are supported ie. the ints in the output can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.

+

Returns false if the input string isn't a valid UTF-8 octet sequence.

+
+ void + + utf8ToUnicode + + ( &$str) +
+ +
    +
  • + + &$str
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---davical_configuration_missing.php.html b/docs/api/davical/_inc---davical_configuration_missing.php.html new file mode 100644 index 00000000..321084f4 --- /dev/null +++ b/docs/api/davical/_inc---davical_configuration_missing.php.html @@ -0,0 +1,76 @@ + + + + + + Docs for page davical_configuration_missing.php + + + + +
+

File/inc/davical_configuration_missing.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + ("page-header.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + include + ("page-footer.php") + (line 31) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---freebusy-GET.php.html b/docs/api/davical/_inc---freebusy-GET.php.html new file mode 100644 index 00000000..40109d88 --- /dev/null +++ b/docs/api/davical/_inc---freebusy-GET.php.html @@ -0,0 +1,76 @@ + + + + + + Docs for page freebusy-GET.php + + + + +
+

File/inc/freebusy-GET.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + ("RRule.php") + (line 3) + +
+ + + +
+ +
+ +
+  + + require_once + ("iCalendar.php") + (line 2) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---interactive-page.php.html b/docs/api/davical/_inc---interactive-page.php.html new file mode 100644 index 00000000..18c67bde --- /dev/null +++ b/docs/api/davical/_inc---interactive-page.php.html @@ -0,0 +1,61 @@ + + + + + + Docs for page interactive-page.php + + + + +
+

File/inc/interactive-page.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("MenuSet.php") + (line 2) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---other_translated_strings.php.html b/docs/api/davical/_inc---other_translated_strings.php.html new file mode 100644 index 00000000..09e04af1 --- /dev/null +++ b/docs/api/davical/_inc---other_translated_strings.php.html @@ -0,0 +1,34 @@ + + + + + + Docs for page other_translated_strings.php + + + + +
+

File/inc/other_translated_strings.php

+ + +
+
Description
+ +
+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---page-footer.php.html b/docs/api/davical/_inc---page-footer.php.html new file mode 100644 index 00000000..04115b3e --- /dev/null +++ b/docs/api/davical/_inc---page-footer.php.html @@ -0,0 +1,34 @@ + + + + + + Docs for page page-footer.php + + + + +
+

File/inc/page-footer.php

+ + +
+
Description
+ +
+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---page-header.php.html b/docs/api/davical/_inc---page-header.php.html new file mode 100644 index 00000000..d0a9d903 --- /dev/null +++ b/docs/api/davical/_inc---page-header.php.html @@ -0,0 +1,91 @@ + + + + + + Docs for page page-header.php + + + + +
+

File/inc/page-header.php

+ + +
+
Description
+ +
+ + +
+
+ + + + + + +
+
Functions
+ +
+ +
+ +
+ + make_help_link (line 7) +
+ + +
+ void + + make_help_link + + ( $matches) +
+ +
    +
  • + + $matches
  • +
+ + +
+ +
+ +
+ + send_page_header (line 30) +
+ + +
+ void + + send_page_header + + () +
+ + + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/_inc---test-RRULE.php.html b/docs/api/davical/_inc---test-RRULE.php.html new file mode 100644 index 00000000..393a0468 --- /dev/null +++ b/docs/api/davical/_inc---test-RRULE.php.html @@ -0,0 +1,76 @@ + + + + + + Docs for page test-RRULE.php + + + + +
+

File/inc/test-RRULE.php

+ + +
+
Description
+ +
+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 2) + +
+ + + +
+ +
+ +
+  + + require_once + ("RRule.php") + (line 3) + +
+ + + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/authentication/_inc---auth-functions.php.html b/docs/api/davical/authentication/_inc---auth-functions.php.html new file mode 100644 index 00000000..dc23af15 --- /dev/null +++ b/docs/api/davical/authentication/_inc---auth-functions.php.html @@ -0,0 +1,207 @@ + + + + + + Docs for page auth-functions.php + + + + +
+

File/inc/auth-functions.php

+ + +
+
Description
+ +
+ +

The authentication handling plugins can be used by the Session class to provide authentication.

+

Each authenticate hook needs to:

  • Accept a username / password
  • Confirm the username / password are correct
  • Create (or update) a 'usr' record in our database
  • Return the 'usr' record as an object
  • Return === false when authentication fails
It can expect that:
  • Configuration data will be in $c->authenticate_hook['config'], which might be an array, or whatever is needed.
In order to be called:
  • This file should be included
  • $c->authenticate_hook['call'] should be set to the name of the plugin
  • $c->authenticate_hook['config'] should be set up with any configuration data for the plugin

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("DataUpdate.php") + (line 29) + +
+ + + +
+ +
+ +
+  + + require_once + ("AWLUtilities.php") + (line 28) + +
+ + + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + AuthExternalAWL (line 142) +
+ + +

Authenticate against a different PostgreSQL database which contains a usr table in the AWL format.

+

Use this as in the following example config snippet:

require_once('auth-functions.php'); $c->authenticate_hook = array( 'call' => 'AuthExternalAwl', 'config' => array( // A PgSQL database connection string for the database containing user records 'connection' => 'dbname=wrms host=otherhost port=5433 user=general', // Which columns should be fetched from the database 'columns' => "user_no, active, email_ok, joined, last_update AS updated, last_used, username, password, fullname, email", // a WHERE clause to limit the records returned. 'where' => "active AND org_code=7" ) );

+
+ void + + AuthExternalAWL + + ( $username,  $password) +
+ +
    +
  • + + $username
  • +
  • + + $password
  • +
+ + +
+ +
+ +
+ + CreateDefaultRelationships (line 63) +
+ + +

Create default relationships

+
+ void + + CreateDefaultRelationships + + (string $username) +
+ +
    +
  • + string + $username: The username of the user we are creating relationships for.
  • +
+ + +
+ +
+ +
+ + CreateHomeCalendar (line 36) +
+ + +

Create a default home calendar for the user.

+
+ void + + CreateHomeCalendar + + (string $username) +
+ +
    +
  • + string + $username: The username of the user we are creating relationships for.
  • +
+ + +
+ +
+ +
+ + UpdateUserFromExternal (line 90) +
+ + +

Update the local cache of the remote user details

+
+ void + + UpdateUserFromExternal + + ( &$usr, object $usr) +
+ +
    +
  • + object + $usr: The user details we read from the remote.
  • +
  • + + &$usr
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_htdocs---caldav.php.html b/docs/api/davical/caldav/_htdocs---caldav.php.html new file mode 100644 index 00000000..29568ea8 --- /dev/null +++ b/docs/api/davical/caldav/_htdocs---caldav.php.html @@ -0,0 +1,300 @@ + + + + + + Docs for page caldav.php + + + + +
+

File/htdocs/caldav.php

+ + +
+
Description
+ +
+ +

CalDAV Server - main program

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + (caldav-OPTIONS.php) + (line 37) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-MKCALENDAR.php) + (line 41) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-PROPFIND.php) + (line 39) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-REPORT.php) + (line 38) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-PROPPATCH.php) + (line 40) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-GET.php) + (line 45) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-MKCALENDAR.php) + (line 42) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-LOCK.php) + (line 48) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-GET.php) + (line 44) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-DELETE.php) + (line 46) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-PUT.php) + (line 43) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-LOCK.php) + (line 47) + +
+ + + +
+ +
+ +
+  + + include_once + (test-RRULE.php) + (line 50) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 11) + +
+ + +

CalDAV Server - main program

+ + +
+ +
+ +
+  + + require_once + (HTTPAuthSession.php) + (line 14) + +
+ + + +
+ +
+ +
+  + + require_once + (CalDAVRequest.php) + (line 33) + +
+ + +

From reading the "Scheduling Extensions to CalDAV" draft I don't think that we will be doing 'calendar-schedule' any time soon. The current spec is at: http://www.ietf.org/internet-drafts/draft-desruisseaux-caldav-sched-03.txt

+

access-control is rfc3744, so we will say we do it, but I doubt if we do it in all (or even much of) it's glory really.

+ +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_htdocs---public.php.html b/docs/api/davical/caldav/_htdocs---public.php.html new file mode 100644 index 00000000..dd5e7de2 --- /dev/null +++ b/docs/api/davical/caldav/_htdocs---public.php.html @@ -0,0 +1,179 @@ + + + + + + Docs for page public.php + + + + +
+

File/htdocs/public.php

+ + +
+
Description
+ +
+ +

CalDAV Server - main program

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + (caldav-REPORT.php) + (line 28) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-OPTIONS.php) + (line 27) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-GET.php) + (line 30) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-PROPFIND.php) + (line 29) + +
+ + + +
+ +
+ +
+  + + include_once + (test-RRULE.php) + (line 43) + +
+ + + +
+ +
+ +
+  + + include_once + (caldav-GET.php) + (line 31) + +
+ + + +
+ +
+ +
+  + + require_once + ("../inc/always.php") + (line 11) + +
+ + +

CalDAV Server - main program

+ + +
+ +
+ +
+  + + require_once + (CalDAVRequest.php) + (line 23) + +
+ + +

A simplified DAV header in this case

+ +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-DELETE.php.html b/docs/api/davical/caldav/_inc---caldav-DELETE.php.html new file mode 100644 index 00000000..5cda8dc6 --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-DELETE.php.html @@ -0,0 +1,40 @@ + + + + + + Docs for page caldav-DELETE.php + + + + +
+

File/inc/caldav-DELETE.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle DELETE method

+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-GET.php.html b/docs/api/davical/caldav/_inc---caldav-GET.php.html new file mode 100644 index 00000000..c5cfd85a --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-GET.php.html @@ -0,0 +1,68 @@ + + + + + + Docs for page caldav-GET.php + + + + +
+

File/inc/caldav-GET.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle GET method

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + ("iCalendar.php") + (line 48) + +
+ + +

Here we are constructing a whole calendar response for this collection, including the timezones that are referred to by the events we have selected.

+ +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-MKCALENDAR.php.html b/docs/api/davical/caldav/_inc---caldav-MKCALENDAR.php.html new file mode 100644 index 00000000..fde06f6e --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-MKCALENDAR.php.html @@ -0,0 +1,40 @@ + + + + + + Docs for page caldav-MKCALENDAR.php + + + + +
+

File/inc/caldav-MKCALENDAR.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle MKCALENDAR method

+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-OPTIONS.php.html b/docs/api/davical/caldav/_inc---caldav-OPTIONS.php.html new file mode 100644 index 00000000..ddbfb04c --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-OPTIONS.php.html @@ -0,0 +1,40 @@ + + + + + + Docs for page caldav-OPTIONS.php + + + + +
+

File/inc/caldav-OPTIONS.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle OPTIONS method

+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-PROPPATCH.php.html b/docs/api/davical/caldav/_inc---caldav-PROPPATCH.php.html new file mode 100644 index 00000000..0c73dd1f --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-PROPPATCH.php.html @@ -0,0 +1,40 @@ + + + + + + Docs for page caldav-PROPPATCH.php + + + + +
+

File/inc/caldav-PROPPATCH.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle PROPPATCH method

+ + +
+
+ + + + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-PUT.php.html b/docs/api/davical/caldav/_inc---caldav-PUT.php.html new file mode 100644 index 00000000..e3e8f6ac --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-PUT.php.html @@ -0,0 +1,73 @@ + + + + + + Docs for page caldav-PUT.php + + + + +
+

File/inc/caldav-PUT.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle PUT method

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include_once + ('caldav-PUT-functions.php') + (line 25) + +
+ + +

CalDAV Server - handle PUT method

+ + +
+
+
+ + + + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/caldav/_inc---caldav-REPORT.php.html b/docs/api/davical/caldav/_inc---caldav-REPORT.php.html new file mode 100644 index 00000000..f877aefa --- /dev/null +++ b/docs/api/davical/caldav/_inc---caldav-REPORT.php.html @@ -0,0 +1,178 @@ + + + + + + Docs for page caldav-REPORT.php + + + + +
+

File/inc/caldav-REPORT.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle REPORT method

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + include + ("caldav-REPORT-freebusy.php") + (line 44) + +
+ + + +
+ +
+ +
+  + + include + ("caldav-REPORT-principal.php") + (line 48) + +
+ + + +
+ +
+ +
+  + + include + ("caldav-REPORT-calquery.php") + (line 163) + +
+ + + +
+ +
+ +
+  + + include + ("caldav-REPORT-multiget.php") + (line 167) + +
+ + + +
+ +
+ +
+  + + require_once + ("iCalendar.php") + (line 35) + +
+ + +

CalDAV Server - handle REPORT method

+ + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + calendar_to_xml (line 68) +
+ + +

Return XML for a single calendar (or todo) entry from the DB

+
    +
  • return: An XML document which is the response for the calendar
  • +
+
+ string + + calendar_to_xml + + (array $properties, string $item) +
+ +
    +
  • + array + $properties: The properties for this calendar
  • +
  • + string + $item: The calendar data for this calendar
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/ldap/_inc---drivers_ldap.php.html b/docs/api/davical/ldap/_inc---drivers_ldap.php.html new file mode 100644 index 00000000..ec9b8b49 --- /dev/null +++ b/docs/api/davical/ldap/_inc---drivers_ldap.php.html @@ -0,0 +1,218 @@ + + + + + + Docs for page drivers_ldap.php + + + + +
+

File/inc/drivers_ldap.php

+ + +
+
Description
+ +
+ +

Manages LDAP repository connection

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + ldapDrivers + + +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("auth-functions.php") + (line 13) + +
+ + + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + getStaticLdap (line 199) +
+ + +

A generic function to create and fetch static objects

+
+ void + + getStaticLdap + + () +
+ + + +
+ +
+ +
+ + LDAP_check (line 244) +
+ + +

Check the username / password against the LDAP server

+
+ void + + LDAP_check + + ( $username,  $password) +
+ +
    +
  • + + $username
  • +
  • + + $password
  • +
+ + +
+ +
+ +
+ + sync_LDAP (line 314) +
+ + +

sync LDAP against the DB

+
+ void + + sync_LDAP + + () +
+ + + +
+ +
+ +
+ + sync_user_from_LDAP (line 216) +
+ + +

Synchronise a cached user with one from LDAP

+
+ void + + sync_user_from_LDAP + + ( &$usr,  $mapping,  $ldap_values, object $usr) +
+ +
    +
  • + object + $usr: A user record to be updated (or created)
  • +
  • + + &$usr
  • +
  • + + $mapping
  • +
  • + + $ldap_values
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/ldap/_inc---drivers_squid_pam.php.html b/docs/api/davical/ldap/_inc---drivers_squid_pam.php.html new file mode 100644 index 00000000..f8b469a3 --- /dev/null +++ b/docs/api/davical/ldap/_inc---drivers_squid_pam.php.html @@ -0,0 +1,147 @@ + + + + + + Docs for page drivers_squid_pam.php + + + + +
+

File/inc/drivers_squid_pam.php

+ + +
+
Description
+ +
+ +

Manages PAM repository connection with SQUID help

+ + +
+
+ + +
+
Classes
+ +
+ + + + + + + + + +
ClassDescription
+  class + squidPamDrivers + + +
+
+
+ + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("auth-functions.php") + (line 13) + +
+ + +

Manages PAM repository connection with SQUID help

+ + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + SQUID_PAM_check (line 53) +
+ + +

Check the username / password against the PAM system

+
+ void + + SQUID_PAM_check + + ( $username,  $password) +
+ +
    +
  • + + $username
  • +
  • + + $password
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/ldap/ldapDrivers.html b/docs/api/davical/ldap/ldapDrivers.html new file mode 100644 index 00000000..a79d0cf3 --- /dev/null +++ b/docs/api/davical/ldap/ldapDrivers.html @@ -0,0 +1,214 @@ + + + + + + Docs For Class ldapDrivers + + + + +
+

 Class ldapDrivers

+ + +
+
Description
+ +
+ +

+ Located in /inc/drivers_ldap.php (line 15) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + ldapDrivers + __construct + (array $config) +
+
+  + ldapDrivers + ldapDrivers + (array $config) +
+
+  + void + getAllUsers + ( $attributes) +
+
+  + array + requestUser + (string $filter, [array $attributes = NULL], string $passwd) +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor __construct (line 43) +
+ + +

Initializes the LDAP connection

+ +
+ ldapDrivers + + __construct + + (array $config) +
+ +
    +
  • + array + $config: The configuration data
  • +
+ + +
+ +
+ +
+ + Constructor ldapDrivers (line 33) +
+ + +

Constructor.

+ +
+ ldapDrivers + + ldapDrivers + + (array $config) +
+ +
    +
  • + array + $config: The configuration data
  • +
+ + +
+ +
+ +
+ + getAllUsers (line 124) +
+ + +

Retrieve all users from the LDAP directory

+ +
+ void + + getAllUsers + + ( $attributes) +
+ +
    +
  • + + $attributes
  • +
+ + +
+ +
+ +
+ + requestUser (line 155) +
+ + +

Returns the result of the LDAP query

+
    +
  • return: Contains selected attributes from all entries corresponding to the given filter
  • +
+ +
+ array + + requestUser + + (string $filter, [array $attributes = NULL], string $passwd) +
+ +
    +
  • + string + $filter: The filter used to search entries
  • +
  • + array + $attributes: Attributes to be returned
  • +
  • + string + $passwd: password to check
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/ldap/squidPamDrivers.html b/docs/api/davical/ldap/squidPamDrivers.html new file mode 100644 index 00000000..ea3b277c --- /dev/null +++ b/docs/api/davical/ldap/squidPamDrivers.html @@ -0,0 +1,139 @@ + + + + + + Docs For Class squidPamDrivers + + + + +
+

 Class squidPamDrivers

+ + +
+
Description
+ +
+ +

+ Located in /inc/drivers_squid_pam.php (line 15) +

+ + +

+	
+			
+
+ + + + + +
+
Method Summary
+ +
+
+
+  + squidPamDrivers + __construct + (string $config) +
+
+  + squidPamDrivers + squidPamDrivers + (string $config) +
+
+
+
+ + + +
+
Methods
+ +
+ + +
+ +
+ + Constructor __construct (line 38) +
+ + +

The constructor

+ +
+ squidPamDrivers + + __construct + + (string $config) +
+ +
    +
  • + string + $config: path where /usr/lib/squid/pam_auth is
  • +
+ + +
+ +
+ +
+ + Constructor squidPamDrivers (line 28) +
+ + +

Constructor.

+ +
+ squidPamDrivers + + squidPamDrivers + + (string $config) +
+ +
    +
  • + string + $config: path where /usr/lib/squid/pam_auth is
  • +
+ + +
+ +
+
+ + +

+ Documentation generated on Thu, 18 Sep 2008 00:10:46 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/davical/propfind/_inc---caldav-PROPFIND.php.html b/docs/api/davical/propfind/_inc---caldav-PROPFIND.php.html new file mode 100644 index 00000000..a8c4f373 --- /dev/null +++ b/docs/api/davical/propfind/_inc---caldav-PROPFIND.php.html @@ -0,0 +1,432 @@ + + + + + + Docs for page caldav-PROPFIND.php + + + + +
+

File/inc/caldav-PROPFIND.php

+ + +
+
Description
+ +
+ +

CalDAV Server - handle PROPFIND method

+ + +
+
+ + + +
+
Includes
+ +
+ +
+ +
+  + + require_once + ("XMLElement.php") + (line 17) + +
+ + + +
+ +
+ +
+  + + require_once + ("iCalendar.php") + (line 18) + +
+ + + +
+
+
+ + + + +
+
Functions
+ +
+ +
+ +
+ + add_namespace (line 27) +
+ + +
+ void + + add_namespace + + ( $prefix,  $namespace) +
+ +
    +
  • + + $prefix
  • +
  • + + $namespace
  • +
+ + +
+ +
+ +
+ + add_principal_properties (line 276) +
+ + +

Handles any properties related to the DAV::PRINCIPAL in the request

+
+ void + + add_principal_properties + + ( &$prop,  &$not_found,  &$denied) +
+ +
    +
  • + + &$prop
  • +
  • + + &$not_found
  • +
  • + + &$denied
  • +
+ + +
+ +
+ +
+ + caldav_tag (line 120) +
+ + +
+ void + + caldav_tag + + ( $tag) +
+ +
    +
  • + + $tag
  • +
+ + +
+ +
+ +
+ + collection_to_xml (line 315) +
+ + +

Returns an XML sub-tree for a single collection record from the DB

+
+ void + + collection_to_xml + + ( $collection) +
+ +
    +
  • + + $collection
  • +
+ + +
+ +
+ +
+ + get_arbitrary_properties (line 252) +
+ + +

Fetches any arbitrary properties that were requested by the PROPFIND into an array, which we return.

+
    +
  • return: The arbitrary properties.
  • +
+
+ array + + get_arbitrary_properties + + ( $dav_name) +
+ +
    +
  • + + $dav_name
  • +
+ + +
+ +
+ +
+ + get_collection (line 638) +
+ + +

Get XML response for a single collection. If Depth is >0 then

+

subsidiary collections will also be got up to $depth

+
+ void + + get_collection + + ( $depth,  $user_no,  $collection_path) +
+ +
    +
  • + + $depth
  • +
  • + + $user_no
  • +
  • + + $collection_path
  • +
+ + +
+ +
+ +
+ + get_collection_contents (line 569) +
+ + +

Get XML response for items in the collection If '/' is requested, a list of visible users is given, otherwise a list of calendars for the user which are parented by this path.

+
+ void + + get_collection_contents + + ( $depth,  $user_no,  $collection) +
+ +
    +
  • + + $depth
  • +
  • + + $user_no
  • +
  • + + $collection
  • +
+ + +
+ +
+ +
+ + get_item (line 691) +
+ + +

Get XML response for a single item. Depth is irrelevant for this.

+
+ void + + get_item + + ( $item_path) +
+ +
    +
  • + + $item_path
  • +
+ + +
+ +
+ +
+ + item_to_xml (line 472) +
+ + +

Return XML for a single data item from the DB

+
+ void + + item_to_xml + + ( $item) +
+ +
    +
  • + + $item
  • +
+ + +
+ +
+ +
+ + namespace_array (line 108) +
+ + +
+ void + + namespace_array + + () +
+ + + +
+ +
+ +
+ + ns_tag (line 50) +
+ + +
+ void + + ns_tag + + ( $in_tag, [ $namespace = null], [ $prefix = null]) +
+ +
    +
  • + + $in_tag
  • +
  • + + $namespace
  • +
  • + + $prefix
  • +
+ + +
+ +
+ +
+ + privileges (line 238) +
+ + +

Returns the array of privilege names converted into XMLElements

+
+ void + + privileges + + ( $privilege_names, [ $container = &quot;privilege&quot;]) +
+ +
    +
  • + + $privilege_names
  • +
  • + + $container
  • +
+ + +
+
+
+ +

+ Documentation generated on Thu, 18 Sep 2008 00:10:45 +1200 by phpDocumentor 1.3.2 +

+
+ \ No newline at end of file diff --git a/docs/api/elementindex.html b/docs/api/elementindex.html new file mode 100644 index 00000000..64ee3688 --- /dev/null +++ b/docs/api/elementindex.html @@ -0,0 +1,1677 @@ + + + + + + + + + + + +

Full index

+

Package indexes

+ +
+
+ a + b + c + d + f + g + h + i + l + m + n + o + p + r + s + t + u + v + w + x + _ +
+ + +
+
a
+
top
+
+
+
+
+ Method + AddDays +
+
+
iCalDate::AddDays() in RRule.php
+
Add some integer number of days to a date
+
+
+ Method + AddDuration +
+
+ +
Add duration
+
+
+ Method + AddMonths +
+
+ +
Add some number of months to a date
+
+
+ Function + add_namespace +
+
+
add_namespace() in caldav-PROPFIND.php
+
+
+ Function + add_principal_properties +
+
+
add_principal_properties() in caldav-PROPFIND.php
+
Handles any properties related to the DAV::PRINCIPAL in the request
+
+
+ Method + AllowedTo +
+
+
HTTPAuthSession::AllowedTo() in HTTPAuthSession.php
+
Checks whether a user is allowed to do something.
+
+
+ Method + AllowedTo +
+
+
CalDAVRequest::AllowedTo() in CalDAVRequest.php
+
Are we allowed to do the requested activity
+
+
+ Method + AllowedTo +
+
+
RSCDSUser::AllowedTo() in RSCDSUser.php
+
Extend parent definition of what the current user is allowed to do
+
+
+ Method + ApplyBySetPos +
+
+ +
Given set position descriptions like '1', '3', '11', '-3' or '-1' and a set, return the subset matching the list of set positions.
+
+
+ Function + apply_filter +
+
+
apply_filter() in caldav-REPORT-calquery.php
+
While we can construct our SQL to apply some filters in the query, other filters need to be checked against the retrieved record. This is for handling those ones.
+
+
+ Method + AssignSessionDetails +
+
+ +
Internal function used to assign the session details to a user's new session.
+
+
+ Method + AssignSessionDetails +
+
+ +
Internal function used to assign the session details to a user's new session.
+
+
+ Function + AuthExternalAWL +
+
+
AuthExternalAWL() in auth-functions.php
+
Authenticate against a different PostgreSQL database which contains a usr table in the AWL format.
+
+
+ Method + AuthFailedResponse +
+
+ +
Authorisation failed, so we send some headers to say so.
+
+
+ Page + auth-functions.php +
+
+
auth-functions.php in auth-functions.php
+
+
+ +
+
b
+
top
+
+
+
+
+ Variable + $by_email +
+
+
CalDAVPrincipal::$by_email in CalDAVPrincipal.php
+
+
+ Method + BasicAuthSession +
+
+ +
Handle Basic HTTP Authentication (not secure unless https)
+
+
+ Function + BuildSqlFilter +
+
+
BuildSqlFilter() in caldav-REPORT-calquery.php
+
Build an SQL 'WHERE' clause which implements (parts of) the filter. The elements of the filter which are implemented in the SQL will be removed.
+
+
+ +
+
c
+
top
+
+
+
+
+ Variable + $calendar_home_set +
+
+ +
+
+ Variable + $collection_id +
+
+
CalDAVRequest::$collection_id in CalDAVRequest.php
+
The ID of the collection containing this path, or of this path if it is a collection
+
+
+ Variable + $collection_path +
+
+
CalDAVRequest::$collection_path in CalDAVRequest.php
+
The path corresponding to the collection_id
+
+
+ Class + CalDAVPrincipal +
+
+
CalDAVPrincipal in CalDAVPrincipal.php
+
A class for things to do with a DAV Principal
+
+
+ Method + CalDAVPrincipal +
+
+
CalDAVPrincipal::CalDAVPrincipal() in CalDAVPrincipal.php
+
Constructor
+
+
+ Class + CalDAVRequest +
+
+
CalDAVRequest in CalDAVRequest.php
+
A class for collecting things to do with this request.
+
+
+ Method + CalDAVRequest +
+
+
CalDAVRequest::CalDAVRequest() in CalDAVRequest.php
+
Create a new CalDAVRequest object.
+
+
+ Function + caldav_tag +
+
+
caldav_tag() in caldav-PROPFIND.php
+
+
+ Function + calendar_to_xml +
+
+
calendar_to_xml() in caldav-REPORT.php
+
Return XML for a single calendar (or todo) entry from the DB
+
+
+ Method + CheckPassword +
+
+
HTTPAuthSession::CheckPassword() in HTTPAuthSession.php
+
CheckPassword does all of the password checking and returns a user record object, or false if it all ends in tears.
+
+
+ Function + check_string +
+
+
check_string() in check_UTF8.php
+
+
+ Function + collection_to_xml +
+
+
collection_to_xml() in caldav-PROPFIND.php
+
Returns an XML sub-tree for a single collection record from the DB
+
+
+ Function + controlRequestContainer +
+
+
controlRequestContainer() in caldav-PUT-functions.php
+
Work out the location we are doing the PUT to, and check that we have the rights to do the needful.
+
+
+ Function + CreateDefaultRelationships +
+
+
CreateDefaultRelationships() in auth-functions.php
+
Create default relationships
+
+
+ Function + CreateHomeCalendar +
+
+
CreateHomeCalendar() in auth-functions.php
+
Create a default home calendar for the user.
+
+
+ Page + caldav.php +
+
+
caldav.php in caldav.php
+
+
+ Page + collection.php +
+
+
collection.php in collection.php
+
+
+ Page + caldav-DELETE.php +
+
+
caldav-DELETE.php in caldav-DELETE.php
+
+
+ Page + caldav-GET.php +
+
+
caldav-GET.php in caldav-GET.php
+
+
+ Page + caldav-LOCK.php +
+
+
caldav-LOCK.php in caldav-LOCK.php
+
+
+ Page + caldav-MKCALENDAR.php +
+
+
caldav-MKCALENDAR.php in caldav-MKCALENDAR.php
+
+
+ Page + caldav-OPTIONS.php +
+
+
caldav-OPTIONS.php in caldav-OPTIONS.php
+
+
+ Page + caldav-PROPFIND.php +
+
+
caldav-PROPFIND.php in caldav-PROPFIND.php
+
+
+ Page + caldav-PROPPATCH.php +
+
+
caldav-PROPPATCH.php in caldav-PROPPATCH.php
+
+
+ Page + caldav-PUT-functions.php +
+
+
caldav-PUT-functions.php in caldav-PUT-functions.php
+
+
+ Page + caldav-PUT.php +
+
+
caldav-PUT.php in caldav-PUT.php
+
+
+ Page + caldav-REPORT-calquery.php +
+
+
caldav-REPORT-calquery.php in caldav-REPORT-calquery.php
+
+
+ Page + caldav-REPORT-freebusy.php +
+
+
caldav-REPORT-freebusy.php in caldav-REPORT-freebusy.php
+
+
+ Page + caldav-REPORT-multiget.php +
+
+
caldav-REPORT-multiget.php in caldav-REPORT-multiget.php
+
+
+ Page + caldav-REPORT-principal.php +
+
+
caldav-REPORT-principal.php in caldav-REPORT-principal.php
+
+
+ Page + caldav-REPORT.php +
+
+
caldav-REPORT.php in caldav-REPORT.php
+
+
+ Page + CalDAVPrincipal.php +
+
+
CalDAVPrincipal.php in CalDAVPrincipal.php
+
+
+ Page + CalDAVRequest.php +
+
+
CalDAVRequest.php in CalDAVRequest.php
+
+
+ Page + check_UTF8.php +
+
+
check_UTF8.php in check_UTF8.php
+
+
+ +
+
d
+
top
+
+
+
+
+ Variable + $depth +
+
+
CalDAVRequest::$depth in CalDAVRequest.php
+
The depth parameter from the request headers, coerced into a valid integer: 0, 1 or DEPTH_INFINITY which is defined above. The default is set per various RFCs.
+
+
+ Method + DateDifference +
+
+ +
Produce an iCalendar format DURATION for the difference between this an another iCalDate
+
+
+ Method + DaysInMonth +
+
+ +
No of days in a month 1(Jan) - 12(Dec)
+
+
+ Method + DepthRegexTail +
+
+
CalDAVRequest::DepthRegexTail() in CalDAVRequest.php
+
Returns the tail of a Regex appropriate for this Depth, when appended to
+
+
+ Constant + DEPTH_INFINITY +
+
+
DEPTH_INFINITY in CalDAVRequest.php
+
+
+ Method + DigestAuthSession +
+
+ +
Handle Digest HTTP Authentication (no passwords were harmed in this transaction!)
+
+
+ Method + DoResponse +
+
+
CalDAVRequest::DoResponse() in CalDAVRequest.php
+
Utility function we call when we have a simple status-based response to return to the client. Possibly
+
+
+ Page + davical_configuration_missing.php +
+
+
davical_configuration_missing.php in davical_configuration_missing.php
+
+
+ Page + drivers_ldap.php +
+
+
drivers_ldap.php in drivers_ldap.php
+
+
+ Page + drivers_squid_pam.php +
+
+
drivers_squid_pam.php in drivers_squid_pam.php
+
+
+ +
+
f
+
top
+
+
+
+
+ Method + FailIfLocked +
+
+
CalDAVRequest::FailIfLocked() in CalDAVRequest.php
+
This will either (a) return false if no locks apply, or (b) return the lock_token which the request successfully included to open the lock, or: (c) respond directly to the client with the failure.
+
+
+ Page + freebusy.php +
+
+
freebusy.php in freebusy.php
+
+
+ Page + freebusy-GET.php +
+
+
freebusy-GET.php in freebusy-GET.php
+
+
+ +
+
g
+
top
+
+
+
+
+ Method + getAllUsers +
+
+
ldapDrivers::getAllUsers() in drivers_ldap.php
+
Retrieve all users from the LDAP directory
+
+
+ Method + GetDepthName +
+
+
CalDAVRequest::GetDepthName() in CalDAVRequest.php
+
Returns the name for this depth: 0, 1, infinity
+
+
+ Method + GetLockDetails +
+
+
CalDAVRequest::GetLockDetails() in CalDAVRequest.php
+
Returns the DB object associated with a lock token, or false.
+
+
+ Method + GetLockRow +
+
+
CalDAVRequest::GetLockRow() in CalDAVRequest.php
+
Returns the locked row, either from the cache or from the database
+
+
+ Method + GetMonthByDay +
+
+ +
Applies any BYDAY to the month to return a set of days
+
+
+ Method + GetMonthByMonthDay +
+
+ +
Applies any BYMONTHDAY to the month to return a set of days
+
+
+ Method + GetNext +
+
+
RRule::GetNext() in RRule.php
+
This is most of the meat of the RRULE processing, where we find the next date.
+
+
+ Method + GetRelationships +
+
+ +
Method used to get the user's relationships
+
+
+ Method + GetRoles +
+
+
HTTPAuthSession::GetRoles() in HTTPAuthSession.php
+
Internal function used to get the user's roles from the database.
+
+
+ Method + GetRoles +
+
+
RSCDSSession::GetRoles() in RSCDSSession.php
+
Method used to get the user's roles
+
+
+ Function + getStaticLdap +
+
+
getStaticLdap() in drivers_ldap.php
+
A generic function to create and fetch static objects
+
+
+ Method + GetWeekByDay +
+
+ +
Applies any BYDAY to the week to return a set of days
+
+
+ Function + get_arbitrary_properties +
+
+
get_arbitrary_properties() in caldav-PROPFIND.php
+
Fetches any arbitrary properties that were requested by the PROPFIND into an array, which we return.
+
+
+ Function + get_collection +
+
+
get_collection() in caldav-PROPFIND.php
+
Get XML response for a single collection. If Depth is >0 then
+
+
+ Function + get_collection_contents +
+
+
get_collection_contents() in caldav-PROPFIND.php
+
Get XML response for items in the collection If '/' is requested, a list of visible users is given, otherwise a list of calendars for the user which are parented by this path.
+
+
+ Function + get_item +
+
+
get_item() in caldav-PROPFIND.php
+
Get XML response for a single item. Depth is irrelevant for this.
+
+
+ Method + GreaterThan +
+
+ +
Test if $this is greater than the date parameter
+
+
+ +
+
h
+
top
+
+
+
+
+ Method + HandleAction +
+
+
RSCDSUser::HandleAction() in RSCDSUser.php
+
Handle any unusual actions we might invent
+
+
+ Page + help.php +
+
+
help.php in help.php
+
+
+ Method + HTTPAuthSession +
+
+
HTTPAuthSession::HTTPAuthSession() in HTTPAuthSession.php
+
The constructor, which just calls the actual type configured
+
+
+ Class + HTTPAuthSession +
+
+
HTTPAuthSession in HTTPAuthSession.php
+
A Class for handling a session using HTTP Basic Authentication
+
+
+ Page + HTTPAuthSession.php +
+
+
HTTPAuthSession.php in HTTPAuthSession.php
+
+
+ +
+
i
+
top
+
+
+
+
+ Page + index.php +
+
+
index.php in index.php
+
+
+ Method + iCalDate +
+
+ +
The constructor takes either an iCalendar date, a text string formatted as an iCalendar date, or epoch seconds.
+
+
+ Class + iCalDate +
+
+
iCalDate in RRule.php
+
A Class for handling dates in iCalendar format. We do make the simplifying assumption that all date handling in here is normalised to GMT. One day we might provide some functions to do that, but for now it is done externally.
+
+
+ Method + importFromDirectory +
+
+ +
+
+ Function + import_collection +
+
+
import_collection() in caldav-PUT-functions.php
+
This function will import a whole calendar
+
+
+ Page + interactive-page.php +
+
+
interactive-page.php in interactive-page.php
+
+
+ Method + InitialiseRecord +
+
+ +
Initialise the Principal object from a $usr record from the DB.
+
+
+ Method + IsCollection +
+
+
CalDAVRequest::IsCollection() in CalDAVRequest.php
+
Returns true if the URL referenced by this request points at a collection.
+
+
+ Method + IsInfiniteDepth +
+
+ +
Returns true if the request asked for infinite depth
+
+
+ Method + IsLocked +
+
+
CalDAVRequest::IsLocked() in CalDAVRequest.php
+
Checks whether the resource is locked, returning any lock token, or false
+
+
+ Method + IsPrincipal +
+
+
CalDAVRequest::IsPrincipal() in CalDAVRequest.php
+
Returns true if the URL referenced by this request points at a principal.
+
+
+ Function + item_to_xml +
+
+
item_to_xml() in caldav-PROPFIND.php
+
Return XML for a single data item from the DB
+
+
+ +
+
l
+
top
+
+
+
+
+ Class + ldapDrivers +
+
+
ldapDrivers in drivers_ldap.php
+
+
+ Method + ldapDrivers +
+
+
ldapDrivers::ldapDrivers() in drivers_ldap.php
+
Constructor.
+
+
+ Function + LDAP_check +
+
+
LDAP_check() in drivers_ldap.php
+
Check the username / password against the LDAP server
+
+
+ Method + LessThan +
+
+ +
Test if $this is less than the date parameter
+
+
+ Function + local_session_sql +
+
+
local_session_sql() in RSCDSSession.php
+
+
+ Method + LoginRequired +
+
+
RSCDSSession::LoginRequired() in RSCDSSession.php
+
Checks that this user is logged in, and presents a login screen if they aren't.
+
+
+ +
+
m
+
top
+
+
+
+
+ Variable + $method +
+
+
CalDAVRequest::$method in CalDAVRequest.php
+
The HTTP request method: PROPFIND, LOCK, REPORT, OPTIONS, etc...
+
+
+ Function + make_help_link +
+
+
make_help_link() in page-header.php
+
+
+ Method + MonthDays +
+
+ +
Given a MonthDays string like "1MO", "-2WE" return an integer day of the month.
+
+
+ +
+
n
+
top
+
+
+
+
+ Function + namespace_array +
+
+
namespace_array() in caldav-PROPFIND.php
+
+
+ Function + ns_tag +
+
+
ns_tag() in caldav-PROPFIND.php
+
+
+ +
+
o
+
top
+
+
+
+
+ Variable + $options +
+
+
CalDAVRequest::$options in CalDAVRequest.php
+
+
+ Page + other_translated_strings.php +
+
+
other_translated_strings.php in other_translated_strings.php
+
+
+ +
+
p
+
top
+
+
+
+
+ Variable + $principal +
+
+
CalDAVRequest::$principal in CalDAVRequest.php
+
The 'principal' (user/resource/...) which this request seeks to access
+
+
+ Page + public.php +
+
+
public.php in public.php
+
+
+ Page + page-footer.php +
+
+
page-footer.php in page-footer.php
+
+
+ Page + page-header.php +
+
+
page-header.php in page-header.php
+
+
+ Method + ParseDigestHeader +
+
+ +
Parse the HTTP Digest Auth Header
+
+
+ Function + principal_to_xml +
+
+
principal_to_xml() in caldav-REPORT-principal.php
+
Return XML for a single Principal (user) from the DB TODO: Refactor this functionality into the CalDAVPrincipal object
+
+
+ Function + privileges +
+
+
privileges() in caldav-PROPFIND.php
+
Returns the array of privilege names converted into XMLElements
+
+
+ Function + public_events_only +
+
+
public_events_only() in caldav-PUT-functions.php
+
Check if this collection should force all events to be PUBLIC.
+
+
+ Function + putCalendarResource +
+
+
putCalendarResource() in caldav-PUT-functions.php
+
Put the resource from this request
+
+
+ +
+
r
+
top
+
+
+
+
+ Variable + $raw_post +
+
+
CalDAVRequest::$raw_post in CalDAVRequest.php
+
The raw data sent along with the request
+
+
+ Page + relationship_types.php +
+
+
relationship_types.php in relationship_types.php
+
+
+ Page + roles.php +
+
+
roles.php in roles.php
+
+
+ Page + RRule.php +
+
+
RRule.php in RRule.php
+
+
+ Page + RSCDSSession.php +
+
+
RSCDSSession.php in RSCDSSession.php
+
+
+ Page + RSCDSUser.php +
+
+
RSCDSUser.php in RSCDSUser.php
+
+
+ Method + Render +
+
+
RSCDSUser::Render() in RSCDSUser.php
+
Render the form / viewer as HTML to show the user
+
+
+ Method + render +
+
+
Tools::render() in tools.php
+
+
+ Method + Render +
+
+
iCalDate::Render() in RRule.php
+
Set the day of week used for calculation of week starts
+
+
+ Method + RenderCollections +
+
+ +
Render the user's collections
+
+
+ Method + renderImportFromDirectory +
+
+ +
+
+ Method + RenderImportIcs +
+
+ +
Render input file to import ics in calendar user
+
+
+ Method + RenderRelationshipsFrom +
+
+ +
Render the user's relationships to other users & resources
+
+
+ Method + RenderRelationshipsTo +
+
+ +
Render the user's relationships to other users & resources
+
+
+ Method + renderSyncLDAP +
+
+ +
+
+ Method + requestUser +
+
+
ldapDrivers::requestUser() in drivers_ldap.php
+
Returns the result of the LDAP query
+
+
+ Function + rollback_on_error +
+
+
rollback_on_error() in caldav-PUT-functions.php
+
This function launches an error
+
+
+ Method + RRule +
+
+
RRule::RRule() in RRule.php
+
The constructor takes a start date and an RRULE definition. Both of these follow the iCalendar standard.
+
+
+ Class + RRule +
+
+
RRule in RRule.php
+
A Class for handling Events on a calendar which repeat
+
+
+ Method + RSCDSSession +
+
+
RSCDSSession::RSCDSSession() in RSCDSSession.php
+
Create a new RSCDSSession object.
+
+
+ Class + RSCDSSession +
+
+
RSCDSSession in RSCDSSession.php
+
A class for creating and holding session information.
+
+
+ Method + RSCDSUser +
+
+
RSCDSUser::RSCDSUser() in RSCDSUser.php
+
Constructor - nothing fancy as yet.
+
+
+ Class + RSCDSUser +
+
+
RSCDSUser in RSCDSUser.php
+
A class for viewing and maintaining DAViCal User records
+
+
+ +
+
s
+
top
+
+
+
+
+ Variable + $schedule_inbox_url +
+
+ +
+
+ Variable + $schedule_outbox_url +
+
+ +
+
+ Global + $session + The session object is global. +
+
+ +
+
+ Function + send_page_header +
+
+
send_page_header() in page-header.php
+
+
+ Method + SetEpochDate +
+
+ +
Set the date from an epoch
+
+
+ Method + SetGMTDate +
+
+ +
Set the date from a text string
+
+
+ Method + SetLocalDate +
+
+ +
Set the date from a text string
+
+
+ Method + SetMonthDay +
+
+ +
Set the day in the month to what we have been given
+
+
+ Method + setPermissions +
+
+
CalDAVRequest::setPermissions() in CalDAVRequest.php
+
Permissions are controlled as follows:
+
+
+ Method + SetWeekStart +
+
+ +
Set the day of week used for calculation of week starts
+
+
+ Function + SqlFilterFragment +
+
+
SqlFilterFragment() in caldav-REPORT-calquery.php
+
Process a filter fragment returning an SQL fragment
+
+
+ Class + squidPamDrivers +
+
+
squidPamDrivers in drivers_squid_pam.php
+
+
+ Method + squidPamDrivers +
+
+
squidPamDrivers::squidPamDrivers() in drivers_squid_pam.php
+
Constructor.
+
+
+ Function + SQUID_PAM_check +
+
+
SQUID_PAM_check() in drivers_squid_pam.php
+
Check the username / password against the PAM system
+
+
+ Method + SupportedPrivileges +
+
+ +
Return an array of what the DAV privileges are that are supported
+
+
+ Function + sync_LDAP +
+
+
sync_LDAP() in drivers_ldap.php
+
sync LDAP against the DB
+
+
+ Function + sync_user_from_LDAP +
+
+
sync_user_from_LDAP() in drivers_ldap.php
+
Synchronise a cached user with one from LDAP
+
+
+ +
+
t
+
top
+
+
+
+
+ Page + tools.php +
+
+
tools.php in tools.php
+
+
+ Page + test-RRULE.php +
+
+
test-RRULE.php in test-RRULE.php
+
+
+ Method + TestByMonth +
+
+ +
Test to see if our _mo matches something in the list of months we have received.
+
+
+ Class + Tools +
+
+
Tools in tools.php
+
+
+ Function + translate_relationship_list +
+
+ +
Translate relationship names in the relationship_list for each user. See the documentation for classBrowser::BrowserColumn for the definition of the hook function parameters.
+
+
+ +
+
u
+
top
+
+
+
+
+ Variable + $url +
+
+
CalDAVPrincipal::$url in CalDAVPrincipal.php
+
+
+ Variable + $user_agent +
+
+
CalDAVRequest::$user_agent in CalDAVRequest.php
+
The user agent making the request.
+
+
+ Page + users.php +
+
+
users.php in users.php
+
+
+ Page + usr.php +
+
+
usr.php in usr.php
+
+
+ Function + unicodeToUtf8 +
+
+
unicodeToUtf8() in check_UTF8.php
+
Takes an array of ints representing the Unicode characters and returns a UTF-8 string. Astral planes are supported ie. the ints in the input can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.
+
+
+ Method + UnsupportedRequest +
+
+ +
Sometimes it's a perfectly formed request, but we just don't do that :-(
+
+
+ Function + UpdateUserFromExternal +
+
+
UpdateUserFromExternal() in auth-functions.php
+
Update the local cache of the remote user details
+
+
+ Method + UserFromPath +
+
+
CalDAVRequest::UserFromPath() in CalDAVRequest.php
+
Work out the user whose calendar we are accessing, based on elements of the path.
+
+
+ Method + UsernameFromPath +
+
+ +
Work out the username, based on elements of the path.
+
+
+ Function + utf8ToUnicode +
+
+
utf8ToUnicode() in check_UTF8.php
+
Takes an UTF-8 string and returns an array of ints representing the Unicode characters. Astral planes are supported ie. the ints in the output can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.
+
+
+ +
+
v
+
top
+
+
+
+
+ Method + Validate +
+
+
RSCDSUser::Validate() in RSCDSUser.php
+
Validate the information the user submitted
+
+
+ Method + ValidateLockToken +
+
+ +
Checks to see whether the lock token given matches one of the ones handed in with the request.
+
+
+ +
+
w
+
top
+
+
+
+
+ Method + WithinScope +
+
+ +
Processes the array of $relative_days to $base and removes any which are not within the scope of our rule.
+
+
+ Method + Write +
+
+
RSCDSUser::Write() in RSCDSUser.php
+
Write the record to the file
+
+
+ +
+
x
+
top
+
+
+
+
+ Method + XMLResponse +
+
+
CalDAVRequest::XMLResponse() in CalDAVRequest.php
+
Send an XML Response. This function will never return.
+
+
+ +
+
_
+
top
+
+
+
+
+ Method + _EpochFromParts +
+
+ +
Given a local text date, convert it to an epoch
+
+
+ Method + _GMTEpochFromParts +
+
+ +
Given a GMT text date, convert it to an epoch
+
+
+ Method + _GMTTextFromEpoch +
+
+ +
Given a GMT epoch date, convert it to text
+
+
+ Method + _PartsFromText +
+
+ +
Given a text date, convert it to parts
+
+
+ Method + _TextFromEpoch +
+
+ +
Given an epoch date, convert it to text
+
+
+ Method + __construct +
+
+
squidPamDrivers::__construct() in drivers_squid_pam.php
+
The constructor
+
+
+ Method + __construct +
+
+
ldapDrivers::__construct() in drivers_ldap.php
+
Initializes the LDAP connection
+
+
+ +
+ a + b + c + d + f + g + h + i + l + m + n + o + p + r + s + t + u + v + w + x + _ +
+ \ No newline at end of file diff --git a/docs/api/elementindex_awl.html b/docs/api/elementindex_awl.html new file mode 100644 index 00000000..eeed64bf --- /dev/null +++ b/docs/api/elementindex_awl.html @@ -0,0 +1,382 @@ + + + + + + + + + + + +

[awl] element index

+

Package indexes

+ +All elements +
+
+ a + d + g + i + l + m + r + s + t + w + _ +
+ + +
+
_
+
top
+
+
+
+
+ Method + _EpochFromParts +
+
+ +
Given a local text date, convert it to an epoch
+
+
+ Method + _GMTEpochFromParts +
+
+ +
Given a GMT text date, convert it to an epoch
+
+
+ Method + _GMTTextFromEpoch +
+
+ +
Given a GMT epoch date, convert it to text
+
+
+ Method + _PartsFromText +
+
+ +
Given a text date, convert it to parts
+
+
+ Method + _TextFromEpoch +
+
+ +
Given an epoch date, convert it to text
+
+
+ +
+
a
+
top
+
+
+
+
+ Method + AddDays +
+
+
iCalDate::AddDays() in RRule.php
+
Add some integer number of days to a date
+
+
+ Method + AddDuration +
+
+ +
Add duration
+
+
+ Method + AddMonths +
+
+ +
Add some number of months to a date
+
+
+ Method + ApplyBySetPos +
+
+ +
Given set position descriptions like '1', '3', '11', '-3' or '-1' and a set, return the subset matching the list of set positions.
+
+
+ +
+
d
+
top
+
+
+
+
+ Method + DateDifference +
+
+ +
Produce an iCalendar format DURATION for the difference between this an another iCalDate
+
+
+ Method + DaysInMonth +
+
+ +
No of days in a month 1(Jan) - 12(Dec)
+
+
+ +
+
g
+
top
+
+
+
+
+ Method + GetMonthByDay +
+
+ +
Applies any BYDAY to the month to return a set of days
+
+
+ Method + GetMonthByMonthDay +
+
+ +
Applies any BYMONTHDAY to the month to return a set of days
+
+
+ Method + GetNext +
+
+
RRule::GetNext() in RRule.php
+
This is most of the meat of the RRULE processing, where we find the next date.
+
+
+ Method + GetWeekByDay +
+
+ +
Applies any BYDAY to the week to return a set of days
+
+
+ Method + GreaterThan +
+
+ +
Test if $this is greater than the date parameter
+
+
+ +
+
i
+
top
+
+
+
+
+ Method + iCalDate +
+
+ +
The constructor takes either an iCalendar date, a text string formatted as an iCalendar date, or epoch seconds.
+
+
+ Class + iCalDate +
+
+
iCalDate in RRule.php
+
A Class for handling dates in iCalendar format. We do make the simplifying assumption that all date handling in here is normalised to GMT. One day we might provide some functions to do that, but for now it is done externally.
+
+
+ +
+
l
+
top
+
+
+
+
+ Method + LessThan +
+
+ +
Test if $this is less than the date parameter
+
+
+ +
+
m
+
top
+
+
+
+
+ Method + MonthDays +
+
+ +
Given a MonthDays string like "1MO", "-2WE" return an integer day of the month.
+
+
+ +
+
r
+
top
+
+
+
+
+ Page + RRule.php +
+
+
RRule.php in RRule.php
+
+
+ Method + Render +
+
+
iCalDate::Render() in RRule.php
+
Set the day of week used for calculation of week starts
+
+
+ Method + RRule +
+
+
RRule::RRule() in RRule.php
+
The constructor takes a start date and an RRULE definition. Both of these follow the iCalendar standard.
+
+
+ Class + RRule +
+
+
RRule in RRule.php
+
A Class for handling Events on a calendar which repeat
+
+
+ +
+
s
+
top
+
+
+
+
+ Method + SetEpochDate +
+
+ +
Set the date from an epoch
+
+
+ Method + SetGMTDate +
+
+ +
Set the date from a text string
+
+
+ Method + SetLocalDate +
+
+ +
Set the date from a text string
+
+
+ Method + SetMonthDay +
+
+ +
Set the day in the month to what we have been given
+
+
+ Method + SetWeekStart +
+
+ +
Set the day of week used for calculation of week starts
+
+
+ +
+
t
+
top
+
+
+
+
+ Method + TestByMonth +
+
+ +
Test to see if our _mo matches something in the list of months we have received.
+
+
+ +
+
w
+
top
+
+
+
+
+ Method + WithinScope +
+
+ +
Processes the array of $relative_days to $base and removes any which are not within the scope of our rule.
+
+
+ +
+ a + d + g + i + l + m + r + s + t + w + _ +
+ \ No newline at end of file diff --git a/docs/api/elementindex_davical.html b/docs/api/elementindex_davical.html new file mode 100644 index 00000000..30dcdabe --- /dev/null +++ b/docs/api/elementindex_davical.html @@ -0,0 +1,1430 @@ + + + + + + + + + + + +

[davical] element index

+

Package indexes

+ +All elements +
+
+ a + b + c + d + f + g + h + i + l + m + n + o + p + r + s + t + u + v + w + x + _ +
+ + +
+
_
+
top
+
+
+
+
+ Method + __construct +
+
+
squidPamDrivers::__construct() in drivers_squid_pam.php
+
The constructor
+
+
+ Method + __construct +
+
+
ldapDrivers::__construct() in drivers_ldap.php
+
Initializes the LDAP connection
+
+
+ +
+
a
+
top
+
+
+
+
+ Function + apply_filter +
+
+
apply_filter() in caldav-REPORT-calquery.php
+
While we can construct our SQL to apply some filters in the query, other filters need to be checked against the retrieved record. This is for handling those ones.
+
+
+ Function + AuthExternalAWL +
+
+
AuthExternalAWL() in auth-functions.php
+
Authenticate against a different PostgreSQL database which contains a usr table in the AWL format.
+
+
+ Page + auth-functions.php +
+
+
auth-functions.php in auth-functions.php
+
+
+ Method + AllowedTo +
+
+
HTTPAuthSession::AllowedTo() in HTTPAuthSession.php
+
Checks whether a user is allowed to do something.
+
+
+ Method + AssignSessionDetails +
+
+ +
Internal function used to assign the session details to a user's new session.
+
+
+ Method + AuthFailedResponse +
+
+ +
Authorisation failed, so we send some headers to say so.
+
+
+ Function + add_namespace +
+
+
add_namespace() in caldav-PROPFIND.php
+
+
+ Function + add_principal_properties +
+
+
add_principal_properties() in caldav-PROPFIND.php
+
Handles any properties related to the DAV::PRINCIPAL in the request
+
+
+ Method + AllowedTo +
+
+
CalDAVRequest::AllowedTo() in CalDAVRequest.php
+
Are we allowed to do the requested activity
+
+
+ Method + AssignSessionDetails +
+
+ +
Internal function used to assign the session details to a user's new session.
+
+
+ Method + AllowedTo +
+
+
RSCDSUser::AllowedTo() in RSCDSUser.php
+
Extend parent definition of what the current user is allowed to do
+
+
+ +
+
b
+
top
+
+
+
+
+ Function + BuildSqlFilter +
+
+
BuildSqlFilter() in caldav-REPORT-calquery.php
+
Build an SQL 'WHERE' clause which implements (parts of) the filter. The elements of the filter which are implemented in the SQL will be removed.
+
+
+ Method + BasicAuthSession +
+
+ +
Handle Basic HTTP Authentication (not secure unless https)
+
+
+ Variable + $by_email +
+
+
CalDAVPrincipal::$by_email in CalDAVPrincipal.php
+
+
+ +
+
c
+
top
+
+
+
+
+ Function + check_string +
+
+
check_string() in check_UTF8.php
+
+
+ Function + controlRequestContainer +
+
+
controlRequestContainer() in caldav-PUT-functions.php
+
Work out the location we are doing the PUT to, and check that we have the rights to do the needful.
+
+
+ Page + collection.php +
+
+
collection.php in collection.php
+
+
+ Page + caldav-LOCK.php +
+
+
caldav-LOCK.php in caldav-LOCK.php
+
+
+ Page + caldav-PUT-functions.php +
+
+
caldav-PUT-functions.php in caldav-PUT-functions.php
+
+
+ Page + caldav-REPORT-calquery.php +
+
+
caldav-REPORT-calquery.php in caldav-REPORT-calquery.php
+
+
+ Page + caldav-REPORT-freebusy.php +
+
+
caldav-REPORT-freebusy.php in caldav-REPORT-freebusy.php
+
+
+ Page + caldav-REPORT-multiget.php +
+
+
caldav-REPORT-multiget.php in caldav-REPORT-multiget.php
+
+
+ Page + caldav-REPORT-principal.php +
+
+
caldav-REPORT-principal.php in caldav-REPORT-principal.php
+
+
+ Page + check_UTF8.php +
+
+
check_UTF8.php in check_UTF8.php
+
+
+ Function + CreateDefaultRelationships +
+
+
CreateDefaultRelationships() in auth-functions.php
+
Create default relationships
+
+
+ Function + CreateHomeCalendar +
+
+
CreateHomeCalendar() in auth-functions.php
+
Create a default home calendar for the user.
+
+
+ Function + calendar_to_xml +
+
+
calendar_to_xml() in caldav-REPORT.php
+
Return XML for a single calendar (or todo) entry from the DB
+
+
+ Page + caldav.php +
+
+
caldav.php in caldav.php
+
+
+ Page + caldav-DELETE.php +
+
+
caldav-DELETE.php in caldav-DELETE.php
+
+
+ Page + caldav-GET.php +
+
+
caldav-GET.php in caldav-GET.php
+
+
+ Page + caldav-MKCALENDAR.php +
+
+
caldav-MKCALENDAR.php in caldav-MKCALENDAR.php
+
+
+ Page + caldav-OPTIONS.php +
+
+
caldav-OPTIONS.php in caldav-OPTIONS.php
+
+
+ Page + caldav-PROPPATCH.php +
+
+
caldav-PROPPATCH.php in caldav-PROPPATCH.php
+
+
+ Page + caldav-PUT.php +
+
+
caldav-PUT.php in caldav-PUT.php
+
+
+ Page + caldav-REPORT.php +
+
+
caldav-REPORT.php in caldav-REPORT.php
+
+
+ Method + CheckPassword +
+
+
HTTPAuthSession::CheckPassword() in HTTPAuthSession.php
+
CheckPassword does all of the password checking and returns a user record object, or false if it all ends in tears.
+
+
+ Variable + $calendar_home_set +
+
+ +
+
+ Method + CalDAVPrincipal +
+
+
CalDAVPrincipal::CalDAVPrincipal() in CalDAVPrincipal.php
+
Constructor
+
+
+ Class + CalDAVPrincipal +
+
+
CalDAVPrincipal in CalDAVPrincipal.php
+
A class for things to do with a DAV Principal
+
+
+ Page + CalDAVPrincipal.php +
+
+
CalDAVPrincipal.php in CalDAVPrincipal.php
+
+
+ Function + caldav_tag +
+
+
caldav_tag() in caldav-PROPFIND.php
+
+
+ Function + collection_to_xml +
+
+
collection_to_xml() in caldav-PROPFIND.php
+
Returns an XML sub-tree for a single collection record from the DB
+
+
+ Page + caldav-PROPFIND.php +
+
+
caldav-PROPFIND.php in caldav-PROPFIND.php
+
+
+ Variable + $collection_id +
+
+
CalDAVRequest::$collection_id in CalDAVRequest.php
+
The ID of the collection containing this path, or of this path if it is a collection
+
+
+ Variable + $collection_path +
+
+
CalDAVRequest::$collection_path in CalDAVRequest.php
+
The path corresponding to the collection_id
+
+
+ Class + CalDAVRequest +
+
+
CalDAVRequest in CalDAVRequest.php
+
A class for collecting things to do with this request.
+
+
+ Method + CalDAVRequest +
+
+
CalDAVRequest::CalDAVRequest() in CalDAVRequest.php
+
Create a new CalDAVRequest object.
+
+
+ Page + CalDAVRequest.php +
+
+
CalDAVRequest.php in CalDAVRequest.php
+
+
+ +
+
d
+
top
+
+
+
+
+ Page + davical_configuration_missing.php +
+
+
davical_configuration_missing.php in davical_configuration_missing.php
+
+
+ Method + DigestAuthSession +
+
+ +
Handle Digest HTTP Authentication (no passwords were harmed in this transaction!)
+
+
+ Page + drivers_ldap.php +
+
+
drivers_ldap.php in drivers_ldap.php
+
+
+ Page + drivers_squid_pam.php +
+
+
drivers_squid_pam.php in drivers_squid_pam.php
+
+
+ Variable + $depth +
+
+
CalDAVRequest::$depth in CalDAVRequest.php
+
The depth parameter from the request headers, coerced into a valid integer: 0, 1 or DEPTH_INFINITY which is defined above. The default is set per various RFCs.
+
+
+ Method + DepthRegexTail +
+
+
CalDAVRequest::DepthRegexTail() in CalDAVRequest.php
+
Returns the tail of a Regex appropriate for this Depth, when appended to
+
+
+ Constant + DEPTH_INFINITY +
+
+
DEPTH_INFINITY in CalDAVRequest.php
+
+
+ Method + DoResponse +
+
+
CalDAVRequest::DoResponse() in CalDAVRequest.php
+
Utility function we call when we have a simple status-based response to return to the client. Possibly
+
+
+ +
+
f
+
top
+
+
+
+
+ Page + freebusy.php +
+
+
freebusy.php in freebusy.php
+
+
+ Page + freebusy-GET.php +
+
+
freebusy-GET.php in freebusy-GET.php
+
+
+ Method + FailIfLocked +
+
+
CalDAVRequest::FailIfLocked() in CalDAVRequest.php
+
This will either (a) return false if no locks apply, or (b) return the lock_token which the request successfully included to open the lock, or: (c) respond directly to the client with the failure.
+
+
+ +
+
g
+
top
+
+
+
+
+ Method + GetRoles +
+
+
HTTPAuthSession::GetRoles() in HTTPAuthSession.php
+
Internal function used to get the user's roles from the database.
+
+
+ Method + getAllUsers +
+
+
ldapDrivers::getAllUsers() in drivers_ldap.php
+
Retrieve all users from the LDAP directory
+
+
+ Function + getStaticLdap +
+
+
getStaticLdap() in drivers_ldap.php
+
A generic function to create and fetch static objects
+
+
+ Function + get_arbitrary_properties +
+
+
get_arbitrary_properties() in caldav-PROPFIND.php
+
Fetches any arbitrary properties that were requested by the PROPFIND into an array, which we return.
+
+
+ Function + get_collection +
+
+
get_collection() in caldav-PROPFIND.php
+
Get XML response for a single collection. If Depth is >0 then
+
+
+ Function + get_collection_contents +
+
+
get_collection_contents() in caldav-PROPFIND.php
+
Get XML response for items in the collection If '/' is requested, a list of visible users is given, otherwise a list of calendars for the user which are parented by this path.
+
+
+ Function + get_item +
+
+
get_item() in caldav-PROPFIND.php
+
Get XML response for a single item. Depth is irrelevant for this.
+
+
+ Method + GetDepthName +
+
+
CalDAVRequest::GetDepthName() in CalDAVRequest.php
+
Returns the name for this depth: 0, 1, infinity
+
+
+ Method + GetLockDetails +
+
+
CalDAVRequest::GetLockDetails() in CalDAVRequest.php
+
Returns the DB object associated with a lock token, or false.
+
+
+ Method + GetLockRow +
+
+
CalDAVRequest::GetLockRow() in CalDAVRequest.php
+
Returns the locked row, either from the cache or from the database
+
+
+ Method + GetRelationships +
+
+ +
Method used to get the user's relationships
+
+
+ Method + GetRoles +
+
+
RSCDSSession::GetRoles() in RSCDSSession.php
+
Method used to get the user's roles
+
+
+ +
+
h
+
top
+
+
+
+
+ Page + help.php +
+
+
help.php in help.php
+
+
+ Method + HTTPAuthSession +
+
+
HTTPAuthSession::HTTPAuthSession() in HTTPAuthSession.php
+
The constructor, which just calls the actual type configured
+
+
+ Class + HTTPAuthSession +
+
+
HTTPAuthSession in HTTPAuthSession.php
+
A Class for handling a session using HTTP Basic Authentication
+
+
+ Page + HTTPAuthSession.php +
+
+
HTTPAuthSession.php in HTTPAuthSession.php
+
+
+ Method + HandleAction +
+
+
RSCDSUser::HandleAction() in RSCDSUser.php
+
Handle any unusual actions we might invent
+
+
+ +
+
i
+
top
+
+
+
+
+ Page + index.php +
+
+
index.php in index.php
+
+
+ Function + import_collection +
+
+
import_collection() in caldav-PUT-functions.php
+
This function will import a whole calendar
+
+
+ Page + interactive-page.php +
+
+
interactive-page.php in interactive-page.php
+
+
+ Method + InitialiseRecord +
+
+ +
Initialise the Principal object from a $usr record from the DB.
+
+
+ Function + item_to_xml +
+
+
item_to_xml() in caldav-PROPFIND.php
+
Return XML for a single data item from the DB
+
+
+ Method + IsCollection +
+
+
CalDAVRequest::IsCollection() in CalDAVRequest.php
+
Returns true if the URL referenced by this request points at a collection.
+
+
+ Method + IsInfiniteDepth +
+
+ +
Returns true if the request asked for infinite depth
+
+
+ Method + IsLocked +
+
+
CalDAVRequest::IsLocked() in CalDAVRequest.php
+
Checks whether the resource is locked, returning any lock token, or false
+
+
+ Method + IsPrincipal +
+
+
CalDAVRequest::IsPrincipal() in CalDAVRequest.php
+
Returns true if the URL referenced by this request points at a principal.
+
+
+ Method + importFromDirectory +
+
+ +
+
+ +
+
l
+
top
+
+
+
+
+ Method + ldapDrivers +
+
+
ldapDrivers::ldapDrivers() in drivers_ldap.php
+
Constructor.
+
+
+ Class + ldapDrivers +
+
+
ldapDrivers in drivers_ldap.php
+
+
+ Function + LDAP_check +
+
+
LDAP_check() in drivers_ldap.php
+
Check the username / password against the LDAP server
+
+
+ Function + local_session_sql +
+
+
local_session_sql() in RSCDSSession.php
+
+
+ Method + LoginRequired +
+
+
RSCDSSession::LoginRequired() in RSCDSSession.php
+
Checks that this user is logged in, and presents a login screen if they aren't.
+
+
+ +
+
m
+
top
+
+
+
+
+ Function + make_help_link +
+
+
make_help_link() in page-header.php
+
+
+ Variable + $method +
+
+
CalDAVRequest::$method in CalDAVRequest.php
+
The HTTP request method: PROPFIND, LOCK, REPORT, OPTIONS, etc...
+
+
+ +
+
n
+
top
+
+
+
+
+ Function + namespace_array +
+
+
namespace_array() in caldav-PROPFIND.php
+
+
+ Function + ns_tag +
+
+
ns_tag() in caldav-PROPFIND.php
+
+
+ +
+
o
+
top
+
+
+
+
+ Page + other_translated_strings.php +
+
+
other_translated_strings.php in other_translated_strings.php
+
+
+ Variable + $options +
+
+
CalDAVRequest::$options in CalDAVRequest.php
+
+
+ +
+
p
+
top
+
+
+
+
+ Page + page-footer.php +
+
+
page-footer.php in page-footer.php
+
+
+ Page + page-header.php +
+
+
page-header.php in page-header.php
+
+
+ Function + principal_to_xml +
+
+
principal_to_xml() in caldav-REPORT-principal.php
+
Return XML for a single Principal (user) from the DB TODO: Refactor this functionality into the CalDAVPrincipal object
+
+
+ Function + public_events_only +
+
+
public_events_only() in caldav-PUT-functions.php
+
Check if this collection should force all events to be PUBLIC.
+
+
+ Function + putCalendarResource +
+
+
putCalendarResource() in caldav-PUT-functions.php
+
Put the resource from this request
+
+
+ Page + public.php +
+
+
public.php in public.php
+
+
+ Method + ParseDigestHeader +
+
+ +
Parse the HTTP Digest Auth Header
+
+
+ Function + privileges +
+
+
privileges() in caldav-PROPFIND.php
+
Returns the array of privilege names converted into XMLElements
+
+
+ Variable + $principal +
+
+
CalDAVRequest::$principal in CalDAVRequest.php
+
The 'principal' (user/resource/...) which this request seeks to access
+
+
+ +
+
r
+
top
+
+
+
+
+ Page + relationship_types.php +
+
+
relationship_types.php in relationship_types.php
+
+
+ Page + roles.php +
+
+
roles.php in roles.php
+
+
+ Function + rollback_on_error +
+
+
rollback_on_error() in caldav-PUT-functions.php
+
This function launches an error
+
+
+ Method + requestUser +
+
+
ldapDrivers::requestUser() in drivers_ldap.php
+
Returns the result of the LDAP query
+
+
+ Variable + $raw_post +
+
+
CalDAVRequest::$raw_post in CalDAVRequest.php
+
The raw data sent along with the request
+
+
+ Page + RSCDSSession.php +
+
+
RSCDSSession.php in RSCDSSession.php
+
+
+ Method + render +
+
+
Tools::render() in tools.php
+
+
+ Method + renderImportFromDirectory +
+
+ +
+
+ Method + renderSyncLDAP +
+
+ +
+
+ Class + RSCDSSession +
+
+
RSCDSSession in RSCDSSession.php
+
A class for creating and holding session information.
+
+
+ Method + RSCDSSession +
+
+
RSCDSSession::RSCDSSession() in RSCDSSession.php
+
Create a new RSCDSSession object.
+
+
+ Page + RSCDSUser.php +
+
+
RSCDSUser.php in RSCDSUser.php
+
+
+ Method + Render +
+
+
RSCDSUser::Render() in RSCDSUser.php
+
Render the form / viewer as HTML to show the user
+
+
+ Method + RenderCollections +
+
+ +
Render the user's collections
+
+
+ Method + RenderImportIcs +
+
+ +
Render input file to import ics in calendar user
+
+
+ Method + RenderRelationshipsFrom +
+
+ +
Render the user's relationships to other users & resources
+
+
+ Method + RenderRelationshipsTo +
+
+ +
Render the user's relationships to other users & resources
+
+
+ Method + RSCDSUser +
+
+
RSCDSUser::RSCDSUser() in RSCDSUser.php
+
Constructor - nothing fancy as yet.
+
+
+ Class + RSCDSUser +
+
+
RSCDSUser in RSCDSUser.php
+
A class for viewing and maintaining DAViCal User records
+
+
+ +
+
s
+
top
+
+
+
+
+ Function + send_page_header +
+
+
send_page_header() in page-header.php
+
+
+ Function + SqlFilterFragment +
+
+
SqlFilterFragment() in caldav-REPORT-calquery.php
+
Process a filter fragment returning an SQL fragment
+
+
+ Method + squidPamDrivers +
+
+
squidPamDrivers::squidPamDrivers() in drivers_squid_pam.php
+
Constructor.
+
+
+ Class + squidPamDrivers +
+
+
squidPamDrivers in drivers_squid_pam.php
+
+
+ Function + SQUID_PAM_check +
+
+
SQUID_PAM_check() in drivers_squid_pam.php
+
Check the username / password against the PAM system
+
+
+ Function + sync_LDAP +
+
+
sync_LDAP() in drivers_ldap.php
+
sync LDAP against the DB
+
+
+ Function + sync_user_from_LDAP +
+
+
sync_user_from_LDAP() in drivers_ldap.php
+
Synchronise a cached user with one from LDAP
+
+
+ Variable + $schedule_inbox_url +
+
+ +
+
+ Variable + $schedule_outbox_url +
+
+ +
+
+ Method + setPermissions +
+
+
CalDAVRequest::setPermissions() in CalDAVRequest.php
+
Permissions are controlled as follows:
+
+
+ Method + SupportedPrivileges +
+
+ +
Return an array of what the DAV privileges are that are supported
+
+
+ Global + $session + The session object is global. +
+
+ +
+
+ +
+
t
+
top
+
+
+
+
+ Page + test-RRULE.php +
+
+
test-RRULE.php in test-RRULE.php
+
+
+ Function + translate_relationship_list +
+
+ +
Translate relationship names in the relationship_list for each user. See the documentation for classBrowser::BrowserColumn for the definition of the hook function parameters.
+
+
+ Page + tools.php +
+
+
tools.php in tools.php
+
+
+ Class + Tools +
+
+
Tools in tools.php
+
+
+ +
+
u
+
top
+
+
+
+
+ Page + usr.php +
+
+
usr.php in usr.php
+
+
+ Function + unicodeToUtf8 +
+
+
unicodeToUtf8() in check_UTF8.php
+
Takes an array of ints representing the Unicode characters and returns a UTF-8 string. Astral planes are supported ie. the ints in the input can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.
+
+
+ Function + utf8ToUnicode +
+
+
utf8ToUnicode() in check_UTF8.php
+
Takes an UTF-8 string and returns an array of ints representing the Unicode characters. Astral planes are supported ie. the ints in the output can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates are not allowed.
+
+
+ Page + users.php +
+
+
users.php in users.php
+
+
+ Function + UpdateUserFromExternal +
+
+
UpdateUserFromExternal() in auth-functions.php
+
Update the local cache of the remote user details
+
+
+ Variable + $url +
+
+
CalDAVPrincipal::$url in CalDAVPrincipal.php
+
+
+ Method + UsernameFromPath +
+
+ +
Work out the username, based on elements of the path.
+
+
+ Variable + $user_agent +
+
+
CalDAVRequest::$user_agent in CalDAVRequest.php
+
The user agent making the request.
+
+
+ Method + UnsupportedRequest +
+
+ +
Sometimes it's a perfectly formed request, but we just don't do that :-(
+
+
+ Method + UserFromPath +
+
+
CalDAVRequest::UserFromPath() in CalDAVRequest.php
+
Work out the user whose calendar we are accessing, based on elements of the path.
+
+
+ +
+
v
+
top
+
+
+
+
+ Method + ValidateLockToken +
+
+ +
Checks to see whether the lock token given matches one of the ones handed in with the request.
+
+
+ Method + Validate +
+
+
RSCDSUser::Validate() in RSCDSUser.php
+
Validate the information the user submitted
+
+
+ +
+
w
+
top
+
+
+
+
+ Method + Write +
+
+
RSCDSUser::Write() in RSCDSUser.php
+
Write the record to the file
+
+
+ +
+
x
+
top
+
+
+
+
+ Method + XMLResponse +
+
+
CalDAVRequest::XMLResponse() in CalDAVRequest.php
+
Send an XML Response. This function will never return.
+
+
+ +
+ a + b + c + d + f + g + h + i + l + m + n + o + p + r + s + t + u + v + w + x + _ +
+ \ No newline at end of file diff --git a/docs/api/errors.html b/docs/api/errors.html new file mode 100644 index 00000000..faf5e629 --- /dev/null +++ b/docs/api/errors.html @@ -0,0 +1,225 @@ + + + + + + phpDocumentor Parser Errors and Warnings + + + + + Post-parsing
+auth-functions.php
+caldav-LOCK.php
+caldav-MKCALENDAR.php
+caldav-PROPFIND.php
+caldav-PUT-functions.php
+caldav-PUT.php
+caldav-REPORT-calquery.php
+caldav-REPORT-freebusy.php
+caldav-REPORT-multiget.php
+caldav-REPORT-principal.php
+caldav-REPORT.php
+caldav.php
+CalDAVRequest.php
+check_UTF8.php
+collection.php
+davical_configuration_missing.php
+drivers_ldap.php
+drivers_squid_pam.php
+freebusy-GET.php
+freebusy.php
+help.php
+index.php
+interactive-page.php
+other_translated_strings.php
+page-footer.php
+page-header.php
+public.php
+relationship_types.php
+roles.php
+RSCDSUser.php
+test-RRULE.php
+tools.php
+users.php
+usr.php
+ +

Post-parsing

+

Warnings:


+Warning - Class RSCDSUser parent User not found
+Warning - Class RSCDSSession parent Session not found
+ +

always.php

+

Warnings:


+Warning on line 42 - Page-level DocBlock precedes "require_once "AWLUtilities.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 42 - require_once include's DocBlock has @package tag, illegal. ignoring tag "@package rscds"
+ +

auth-functions.php

+

Warnings:


+Warning on line 27 - Page-level DocBlock precedes "require_once "AWLUtilities.php"", use another DocBlock to document the source element
+ +

caldav-LOCK.php

+

Warnings:


+Warning on line 138 - File "/home/andrew/projects/davical/inc/caldav-LOCK.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

caldav-MKCALENDAR.php

+

Warnings:


+Warning on line 10 - package davical is already in category Technical, will now replace with category Documentation
+ +

caldav-PROPFIND.php

+

Warnings:


+Warning on line 16 - Page-level DocBlock precedes "require_once "XMLElement.php"", use another DocBlock to document the source element
+ +

caldav-PUT-functions.php

+

Warnings:


+Warning on line 415 - File "/home/andrew/projects/davical/inc/caldav-PUT-functions.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

caldav-PUT.php

+

Warnings:


+Warning on line 24 - Page-level DocBlock precedes "include_once 'caldav-PUT-functions.php'", use another DocBlock to document the source element
+

Errors:


+Error on line 24 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 24 - "include" include_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage caldav"
+ +

caldav-REPORT-calquery.php

+

Warnings:


+Warning on line 32 - no @package tag was used in a DocBlock for file /home/andrew/projects/davical/inc/caldav-REPORT-calquery.php
+ +

caldav-REPORT-freebusy.php

+

Warnings:


+Warning on line 101 - File "/home/andrew/projects/davical/inc/caldav-REPORT-freebusy.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

caldav-REPORT-multiget.php

+

Warnings:


+Warning on line 11 - no @package tag was used in a DocBlock for file /home/andrew/projects/davical/inc/caldav-REPORT-multiget.php
+Warning on line 11 - package davical is already in category Technical, will now replace with category Documentation
+ +

caldav-REPORT-principal.php

+

Warnings:


+Warning on line 135 - File "/home/andrew/projects/davical/inc/caldav-REPORT-principal.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

caldav-REPORT.php

+

Warnings:


+Warning on line 34 - Page-level DocBlock precedes "require_once "iCalendar.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 34 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 34 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage caldav"
+ +

caldav.php

+

Warnings:


+Warning on line 10 - Page-level DocBlock precedes "require_once "../inc/always.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 10 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage caldav"
+Error on line 10 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+ +

CalDAVRequest.php

+

Warnings:


+Warning on line 16 - Page-level DocBlock precedes "require_once "XMLElement.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 16 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 16 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage Request"
+ +

check_UTF8.php

+

Warnings:


+Warning on line 227 - File "/home/andrew/projects/davical/inc/check_UTF8.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

collection.php

+

Warnings:


+Warning on line 52 - File "/home/andrew/projects/davical/htdocs/collection.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

davical_configuration_missing.php

+

Warnings:


+Warning on line 30 - File "/home/andrew/projects/davical/inc/davical_configuration_missing.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

drivers_ldap.php

+

Warnings:


+Warning on line 12 - Page-level DocBlock precedes "require_once "auth-functions.php"", use another DocBlock to document the source element
+Warning on line 15 - no @package tag was used in a DocBlock for class ldapDrivers
+ +

drivers_squid_pam.php

+

Warnings:


+Warning on line 12 - Page-level DocBlock precedes "require_once "auth-functions.php"", use another DocBlock to document the source element
+Warning on line 15 - no @package tag was used in a DocBlock for class squidPamDrivers
+

Errors:


+Error on line 12 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 12 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage ldap"
+ +

freebusy-GET.php

+

Warnings:


+Warning on line 111 - File "/home/andrew/projects/davical/inc/freebusy-GET.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

freebusy.php

+

Warnings:


+Warning on line 32 - File "/home/andrew/projects/davical/htdocs/freebusy.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

help.php

+

Warnings:


+Warning on line 19 - File "/home/andrew/projects/davical/htdocs/help.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

index.php

+

Warnings:


+Warning on line 68 - File "/home/andrew/projects/davical/htdocs/index.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

interactive-page.php

+

Warnings:


+Warning on line 19 - File "/home/andrew/projects/davical/inc/interactive-page.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

other_translated_strings.php

+

Warnings:


+Warning on line 44 - File "/home/andrew/projects/davical/inc/other_translated_strings.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

page-footer.php

+

Warnings:


+Warning on line 1 - File "/home/andrew/projects/davical/inc/page-footer.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

page-header.php

+

Warnings:


+Warning on line 96 - File "/home/andrew/projects/davical/inc/page-header.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

public.php

+

Warnings:


+Warning on line 10 - Page-level DocBlock precedes "require_once "../inc/always.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 10 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 10 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage caldav"
+ +

relationship_types.php

+

Warnings:


+Warning on line 108 - File "/home/andrew/projects/davical/htdocs/relationship_types.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

roles.php

+

Warnings:


+Warning on line 39 - File "/home/andrew/projects/davical/htdocs/roles.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

RSCDSUser.php

+

Warnings:


+Warning on line 11 - Page-level DocBlock precedes "require_once "User.php"", use another DocBlock to document the source element
+ +

test-RRULE.php

+

Warnings:


+Warning on line 39 - File "/home/andrew/projects/davical/inc/test-RRULE.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+ +

tools.php

+

Warnings:


+Warning on line 11 - Page-level DocBlock precedes "require_once "../inc/always.php"", use another DocBlock to document the source element
+Warning on line 35 - no @package tag was used in a DocBlock for class Tools
+

Errors:


+Error on line 11 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+Error on line 11 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage RSCDSSession"
+ +

users.php

+

Warnings:


+Warning on line 10 - Page-level DocBlock precedes "require_once "../inc/always.php"", use another DocBlock to document the source element
+

Errors:


+Error on line 10 - "include" require_once's DocBlock has @subpackage tags, illegal. ignoring tag "@subpackage Admin"
+Error on line 10 - DocBlock has multiple @package tags, illegal. ignoring additional tag "@package davical"
+ +

usr.php

+

Warnings:


+Warning on line 94 - File "/home/andrew/projects/davical/htdocs/usr.php" has no page-level DocBlock, use @package in the first DocBlock to create one
+

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+ + \ No newline at end of file diff --git a/docs/api/index.html b/docs/api/index.html new file mode 100644 index 00000000..f5ad3f40 --- /dev/null +++ b/docs/api/index.html @@ -0,0 +1,24 @@ + + + + + + DAViCal + + + + + + + + + + + <H2>Frame Alert</H2> + <P>This document is designed to be viewed using the frames feature. + If you see this message, you are using a non-frame-capable web client.</P> + + + \ No newline at end of file diff --git a/docs/api/li_awl.html b/docs/api/li_awl.html new file mode 100644 index 00000000..e55ca7ef --- /dev/null +++ b/docs/api/li_awl.html @@ -0,0 +1,45 @@ + + + + + + + + + + +
awl
+
+ +
+ +
Description
+
+ Class trees
+ Index of elements
+ Todo List
+
+ + + + + + + +
Sub-packagecaldav
+
+
+
 Classes
+
ClassiCalDate
+
ClassRRule
+
 Files
+
FileRRule.php
+
+
+ + +
+
+

phpDocumentor v 1.3.2

+ + \ No newline at end of file diff --git a/docs/api/li_davical.html b/docs/api/li_davical.html new file mode 100644 index 00000000..96e25740 --- /dev/null +++ b/docs/api/li_davical.html @@ -0,0 +1,233 @@ + + + + + + + + + + +
davical
+
+ +
+ +
Description
+
+ Class trees
+ Index of elements
+ Todo List
+
+ + + +
 Classes
+
 Functions
+
Functionapply_filter
+
FunctionBuildSqlFilter
+
Functioncheck_string
+
FunctioncontrolRequestContainer
+
Functionimport_collection
+
Functionmake_help_link
+
Functionprincipal_to_xml
+
Functionpublic_events_only
+
FunctionputCalendarResource
+
Functionrollback_on_error
+
Functionsend_page_header
+
FunctionSqlFilterFragment
+
FunctionunicodeToUtf8
+
Functionutf8ToUnicode
+
 Files
+
Filecaldav-LOCK.php
+
Filecaldav-PUT-functions.php
+
Filecaldav-REPORT-calquery.php
+
Filecaldav-REPORT-freebusy.php
+
Filecaldav-REPORT-multiget.php
+
Filecaldav-REPORT-principal.php
+
Filecheck_UTF8.php
+
Filecollection.php
+
Filedavical_configuration_missing.php
+
Filefreebusy-GET.php
+
Filefreebusy.php
+
Filehelp.php
+
Fileindex.php
+
Fileinteractive-page.php
+
Fileother_translated_strings.php
+
Filepage-footer.php
+
Filepage-header.php
+
Filerelationship_types.php
+
Fileroles.php
+
Filetest-RRULE.php
+
Fileusr.php
+ + + + +
Sub-packageAdmin
+
+
+
 Functions
+
Functiontranslate_relationship_list
+
 Files
+
Fileusers.php
+
+
+ + + + +
Sub-packageauthentication
+
+
+
 Functions
+
FunctionAuthExternalAWL
+
FunctionCreateDefaultRelationships
+
FunctionCreateHomeCalendar
+
FunctionUpdateUserFromExternal
+
 Files
+
Fileauth-functions.php
+
+
+ + + + +
Sub-packagecaldav
+
+
+
 Functions
+
Functioncalendar_to_xml
+
 Files
+
Filecaldav-DELETE.php
+
Filecaldav-GET.php
+
Filecaldav-MKCALENDAR.php
+
Filecaldav-OPTIONS.php
+
Filecaldav-PROPPATCH.php
+
Filecaldav-PUT.php
+
Filecaldav-REPORT.php
+
Filecaldav.php
+
Filepublic.php
+
+
+ + + + +
Sub-packageHTTPAuthSession
+
+
+
 Classes
+
ClassHTTPAuthSession
+
 Files
+
FileHTTPAuthSession.php
+
+
+ + + + +
Sub-packageldap
+
+
+
 Classes
+
ClassldapDrivers
+
ClasssquidPamDrivers
+
 Functions
+
FunctiongetStaticLdap
+
FunctionLDAP_check
+
FunctionSQUID_PAM_check
+
Functionsync_LDAP
+
Functionsync_user_from_LDAP
+
 Files
+
Filedrivers_ldap.php
+
Filedrivers_squid_pam.php
+
+
+ + + + +
Sub-packagePrincipal
+
+
+
 Classes
+
ClassCalDAVPrincipal
+
 Files
+
FileCalDAVPrincipal.php
+
+
+ + + + +
Sub-packagepropfind
+
+
+
 Functions
+
Functionadd_namespace
+
Functionadd_principal_properties
+
Functioncaldav_tag
+
Functioncollection_to_xml
+
Functionget_arbitrary_properties
+
Functionget_collection
+
Functionget_collection_contents
+
Functionget_item
+
Functionitem_to_xml
+
Functionnamespace_array
+
Functionns_tag
+
Functionprivileges
+
 Files
+
Filecaldav-PROPFIND.php
+
+
+ + + + +
Sub-packageRequest
+
+
+
 Classes
+
ClassCalDAVRequest
+
 Files
+
FileCalDAVRequest.php
+
+
+ + + + +
Sub-packageRSCDSSession
+
+
+
 Classes
+
ClassRSCDSSession
+
ClassTools
+
 Functions
+
Functionlocal_session_sql
+
 Files
+
FileRSCDSSession.php
+
Filetools.php
+
+
+ + + + +
Sub-packageRSCDSUser
+
+
+
 Classes
+
ClassRSCDSUser
+
 Files
+
FileRSCDSUser.php
+
+
+ + +
+
+

phpDocumentor v 1.3.2

+ + \ No newline at end of file diff --git a/docs/api/media/banner.css b/docs/api/media/banner.css new file mode 100644 index 00000000..35ff3cc3 --- /dev/null +++ b/docs/api/media/banner.css @@ -0,0 +1,33 @@ +body +{ + background-color: #EEEEEE; + margin: 0px; + padding: 0px; +} + +/* Banner (top bar) classes */ + +.banner { } + +.banner-menu +{ + text-align: right; + clear: both; + padding: .5em; + border-top: 2px solid #AAAAAA; +} + +.banner-title +{ + text-align: right; + font-size: 20pt; + font-weight: bold; + margin: .2em; +} + +.package-selector +{ + background-color: #DDDDDD; + border: 1px solid #AAAAAA; + color: #000090; +} diff --git a/docs/api/media/images/AbstractClass.png b/docs/api/media/images/AbstractClass.png new file mode 100644 index 0000000000000000000000000000000000000000..afa9d1d9261500c57ec37cff1de8cf43b31dbf25 GIT binary patch literal 620 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJbFq_W2nPqp?T7vkfZSaHJ|V9E z|NjRvPcK>oB;jC!uy7wgKahK+w)SFm^_jG^eUXv70s?k;dvAAg+Gb<3&cI-?g2GG& zh8_lnGzNx)iHU~;0{$Bt?{jhjD)_IizRSYmznt6_Lqnj-|B{khH8nS=tN#}e_{zt( zR#EXk2ggfJ&eakUK)aWTi~nF?_`tyMoPps!1H*L&hBwx{7GaqsHK2b=zCZk2F6c8jl1JVN5*@+%rr7PI}^11C*oaK4^xC05VCJK_3< zud|-<{@_}WT(>@P3->I)OHK!WY*;^8{ZU{D!{pbT`vks!nK+ee*>;`t+%u+Jea(8o vR5x-}=mldp!DT+b`?hi(nsMPiM;)`hf`a|hX9_^KGcb6%`njxgN@xNA_;dCz literal 0 HcmV?d00001 diff --git a/docs/api/media/images/AbstractClass_logo.png b/docs/api/media/images/AbstractClass_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8f65c390e37b548578390c0bdbe4a4bc469c4d19 GIT binary patch literal 1232 zcmb`F`%jZ+6vq#W@U{$S1TZXV4viCPx3q`=k`4L zo1#BJx0H}AAicqQU>vV%^^<9m|tWsIx<8LP>5;)!-8{5Ba8xawKa^8)JAwolYrP3xG ze;gi;N)W-psLCUuuq7;v;PILTf-XM)dx3ypvzvl~UU4|4;9xV4hpH34zB3F)V?aO$ zn|+nbCFt}9e}9{g&n%sOWyOknOy(?=N>C`M!zl`-mcbw}tb)O4@%Ek}kw)FzM%>+P z&dw7gQYD>^Hi$-;0kAkbTLCIOJjMZr0D1sUQ>kWvt0dArfEIuTfD>f$DGaLt_zu7T zPzaEN77pxLob%;x2CG}`xIIwL@5%qsVT}twSp0*)++a!sc%Q?K z`N@jCeTp+nwyR|s`Xqf{xt8ToY?#m#I3M+++}?TZyynf|!6(h%ZXB5YwRD&DpE->+ zQa?!d&ipfd^zwzIKtBJ~qLA$Mj4wHSb~mtdtP52mbBN=vTM#>mfmycxM}yu)6Bg^4@lw*?MFu3*Llv~ zTq;{9ldCeY*UL|oCB+&|W}C3XvTUffR~(q#WAaNg-nYFVl1oFwjfcGkWO1Lan7mWj zTHAk$B{{PsrhD+|_&Dv{Dq|lMERc7*{?yjm*&4fucG~As73P}JZF+xm+H<2#y7rxG zW9=q?%ZBwC`JJPAZS{(h+4A?WNris0W9rS3rW|*EzKH2={VP|ERZ$+~<|y91p2^}Q nm5>e}t(H)$%7m@A#{7td(X}C*54y81qwfI{akQvb7@z$w+j=f( literal 0 HcmV?d00001 diff --git a/docs/api/media/images/AbstractMethod.png b/docs/api/media/images/AbstractMethod.png new file mode 100644 index 0000000000000000000000000000000000000000..605ccbe58e04d8f1462227f08369ef6d8e5d4fe0 GIT binary patch literal 696 zcmV;p0!RIcP){TiMy!!e(Yf-7_V#G2iUr zLy?{{R5VTt!-qRXx-)@b&OX;WKp!2|aT>;Q#=c z001J6D>1||Q0X(T002sRN{?O-R{#J232;bRa{vGf5&!@T5&_cPe*6Fc02XvbSad^j zWnpw_Z*Cw|X>DZyFf=bPGA}SQ*^*j90000WbVXQnQ*UN;cVTj608L?Ia&K*AWNBd_ zMrm?ocW-iQb0AGvyOAm+0002PNklfMHT-Bv8QIEs=+ZPf$A`E>2c0)H#Sj$PWnk1p@>G(zLXgfTkY(YJ2o$Mf2{EX7&_@CL4Lsu zf=WupE-s;IY31eR9Y|p2?lbS+y#t0XRlwut?cae`au#?*7Bet#3xP1>rMq>1fPxAo zt`Q}{`DrEPiAAXlzKO|2`MIennTZN+nMJAP`9;~q3ceA$Cu*qx)rx`CIv1rTmSpDV zDTHL^rZO0q=o=X68yMf56y*d|@zK-8F{EOS?)lqMO%4*R4`(`@EDFELx7ssVZORd| zq%5HzwQYvlS2%cGPXFHD@~{05-~Gi~FPw_9ndsyAvUly>(4LD`8%wTUDBXMa-M%{6 zPZCGZ>%ZQD?T}l&!`s7tUKsOr`-?Wu<;}Q-LQ_10v>q37%ry4uIK**v&qDxa`a*R3vrciLZ8L}yD) oC>0QH(U@~sMxOVvCC6j?c~N@r8XNCh0zJ>*>FVdQ&MBb@0EQ=S+yDRo literal 0 HcmV?d00001 diff --git a/docs/api/media/images/AbstractPrivateClass_logo.png b/docs/api/media/images/AbstractPrivateClass_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4e68f570dcb38ee67756ce2231bb5c38e77cce71 GIT binary patch literal 1615 zcmd5)X;Twc6n!ia!lFSW4Jkrc1`LPY$1sj(#lRGf?-K4OF)W1MOFm{ z#7YHOM1d45sY*y?RaT*Ff-H@QqJv;$S_hSqKJ6F#4|-7%db^6N%JBAT-(9*4o%q znVVM{8z&gwu}%jHt3R3eeo)zwv3Rdtk> zHkX%IR8+_c3#BLl`T3*C$>o`ujcI8r9xppPdr&AWJ9+Y=SiH#R_r%1&N)#a> zLp)xoP^jW?x*{TSg~HD8@MMu_J|N&;P>>Mv3@w(yNtt`_4MTNcqLq} z%GI^Y$LAr10vpK)47}svp&}CHWHOh_eLy0K*z8s^S%t^Hv9+Bb5@VQ58Hse=#f8OU z!IlG<%q?^C0ynn}bMx!Y&f#=AmrftS zz{0{8=0u^Owi_rERBYA2Al=^ngo6W*NbJU9H<8F%9BxBfdvV7O=!jBFYZ-~mv9x@x zsR@ORv9^X@%xG!71fbr~a2|np3MB<#5&&q>5CDxxWG?{FDLDW|y1G&TngOW$U}y!L z4IC~XfGhw62!t2_EEWrG`q&@}0J;|r4?^#yB9<>37+4Ughj_fi#GHz2*JLti8^rv7 zu=W9PsQxe5o@p5i8$iZ+2Ey)icfJp`vH6pmki>~-0U~xRPm~y%5D9!j!xLhUM@H~N zaUT4H$i&!$Xd%ugKz7d73jRgE|LdL*87kt(3UD0$@kl^$b|5%85QsCyT&R@#EjpFV zNxB$0{_dMGCPphR1jGN@&Te?$F)~u1_bJ2p$i%={-+*sD-;Or!G|aRk{(Pj}Kd}0H zUF|6ogUq)Y;t|lhxz(~t`eQ_RUoq1-eLFT?AP8E>XkA)fHggqi^htaeb*$=!t4&v9 zqXdHJ6|UE%Zb#CMmiE)kj0RV6b=%tA)%tp^#^=wTC2c+JUMy1oOuKh7@94hZJCoCG zXxaS2yJN@J#J33U`c+%lKU?M&7D~KdDwWEKxzE31HT2^+xj+0k>P|X8pxN^#{*0l; zJtxPg-}2sdI`*|*oC&-#etYRjR+M_H)cIG6TS0l{{gE&BmCtq~sCpA%t$SPejT1KZ zhgY7Xi)In=GWoXzL>tiaEgkbHwlbdGz1?uS;}g9r9hTrqerW-%FO1@shEpP|okxi= zPM5cWANffS>kbM9sa+||;ebojEN0yA9yek&f^IImjYjiE#g2W+w}g5r{lcI0tMbXg zn)g@NIfMqbGFiEQJ-TD7%ey9VJ;gYDC9Ao8C1ZwKf{tkXg^MxlZFwOFr^!}`w~YQU zd1uJz%3r<80}oBt)q-)m&*Rf}D)wh9&K|(^9IVw$da;MNxX>Y)R&c|pBRwc!j(BVG z1gV@=8A+_ZCz$E2gI1@w{L*m@r+H)9vC7|V^Qd`Hj&)~W1WkS8@5e~OE~BI%6gwn= zr*W1_Ms>6Hs`1daQJXsTMk+A3=fdt{i_4foPsd6$>Q%`uT3s3z34l|D0EF>7@e!`_b&3NDRW2J ly0$Y=SuS5{3YHYFR9bNnjKnZ6dJUX%K&SaqC6tg;{{UJF@sa=l literal 0 HcmV?d00001 diff --git a/docs/api/media/images/AbstractPrivateMethod.png b/docs/api/media/images/AbstractPrivateMethod.png new file mode 100644 index 0000000000000000000000000000000000000000..41cc9f021734b6f99a723a687827190f2ae645e2 GIT binary patch literal 874 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJbFq_W2nPqp?T7vk7#J8+1AIbU z|Ns9Flwsj#1(FdZp_~dll^g2aJA$}1LE7U51%YJBiZnqBFdculhYlSI zePQDH(Aed!@#@v9{V!U0T+*|>Vq|mPaK+-qHfL>(<z;@U}mwJ#*$v?ZZY|dku|t z>TYOnx7uW^y4kR+tIJ@Wf$1uBpzT)k?NpbUwl>yHs;P72AM0gsJN85x|f1nsNASyQ)C^V z5(o6cX?uI1gPQ_$zUt}*MFj!9qne@NAL##8Sy?4sMa%1B#506*U(#MpQkI2X< zc`N_t;!<)|IwT?j3`C$$JEf(8o_)r^aG!xeU0r=914Ae{#Jqy9S^>kcyd=mkm_blU z$=KK>G&D3VtsLmpnX6WvIdc~R-hlxyN~jN}hd;CiI)SsmBeIx*fm;ZK886+f`vVjd zD{+k|aV|AI6tkVJh3R1!8b9vC_gtf zB{NaMEwd=KJijQrSiv`9_e3ofpxV=(E{-7;bCLzbgr`rKFk#BGq?87R>nEOk>FJpx zR5!!H#V1TpU<$_pmPbOx#d~EhvfQbWT_nhq+3L!8?pK_VPC(<7l;G z*2$BHZrL7j2|sUR5%A_P)N-TQ+}Y|GrRdK zV81Pn)+>0zGnMUCiP|Spqc&^AG^y;y-0mPhgGJ5$HDs$bXTdY0@m-PJEq%`?TdG9A z`7w;w(EZ*psMAWc}ikt!qr000(rMObu0a%Ew3 zX>V>IRB3Hx05CK!FfuPNGue__LI3~&s7XXYRCt_C%4rvYKmdi|(V{3Sky0s2sVw0{ z3ns_0{QqBM)L8Df_c<4+W|ZRbuE?ptT;0z>z23f%IS}<{hVT1%ezB)pU1LBR7z?!4 zdf1$>0)?RM<32r|FI3$jzfkuMegO9fmRSW?+;gd{A6?vpl~i!EaT78927Y{aY)A+t zD;|Uj0{6%|rRRA`LWdbZAQrk%Pf@@U0ViwJZw&^h9P>Z*1$ZnRgm9bKlmGw#07*qo IM6N<$g0d3*MgRZ+ literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Class_logo.png b/docs/api/media/images/Class_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6f223c479a6c6fefab504deb84ab824d2e744713 GIT binary patch literal 1600 zcmd5*`!|$%9DdQB9VXJcrO7tT6s8%5m)$T$<9->p85y@dE{&RXZA?TG%_2nB{k}w+ z>>y&K8JEf>)@4JEu#A%^x8$DGyKmbsyZ^yH=X@^b^L>8!JkR-jlN{|WrKJu_0RSLv zZDr;RS2P?)5fX5&yJ6f47l|;kH4TA4Ow2fl06^Tq(T-*gK@j``L!Zj}+HeO}zBX0; zizS_}vsy(-{E4`_@#vbdi+5fGm5%u5_tDdPtzuhX8qOmN&M4C`MSV{xS#?0cPBr16I(qS$$iDTJrh_s?O!p#8Hcm?#qi{w{Bl~rNTh%>k zux{n)ub}uDC~68~PeK9XP|o0n-x!qAyY4;;IgdbbU2Fb*kj)U}I`FAP@Yeb{ME(1wR2$S zCnkTzwDp5^%MQJH%Za}Qw(J@Sb}rN|#d2rO_**uOn}$u>PW5Z&eqR6^w@vF-EowJR z?ytf7pRC>Vy0c(Xy#ZElT5*>`i$x}PS71@3%2n|0Ix}zDrR23?#T;0%YIu7FmT6El z2Nu24DVZbXi)=HebP7bUa4>sWJ4d9GHAl=E1#c}<6Gn-tBHfgEozyY>%|Y;&c|yW4 zku#~q8L_(3kLUF3#=OE^@6x?8LyQ_DL=9+0x1A2}#zl7MT$&`ZUJ%&*xUeUhY#|}I zSN$R%Hj~6`#Raq+3+8G3+=%z@#4@=!KOxb#LH%4E&aW2hTXDiu02{99&efzpfNj@w zsn?)ZV`*i_sYO_)-;O(09;Z}d95XSL46I%8F`F_qo10kk0*qOr$PC`va_ndpbYvy|{2GJehB@IiF4o$aZ>K{XIGb8+#H_!n;6$gipr{DZ!g z{{X(k{~?NKvs$nq$xth|FaSV)_a(%J{)*XyhiJArolOn#XGi$37y!k`j};QcILGus zTQFISh!9pl7@9&C{EEZET*WV3Qx?OA%?t@f)0jaFfT*WU)YT?}FEiZ9@ONZdo1LLu zF7opRBrE~}wa)fRZUyglRb^$GxSn2Pg91AFWDunfuj18GhDIRNFt3KCaO!XG6XR&1 z28*aehm}!<>IiA_!AaB^KQ(Cz%0e>k6#30Eu? zFVRRBHaEw|$2T?#1h?9*(e0eWnYQm1Hr1B!cKi1WHPMl!yyD`-M9a|7P&O+nm`UBf zx#`hy(nM;f-efI&Ys=m~Cg$M5y1IM!ni-dtGv`C5w7MQkIj2kLO^;6v4}(M!NmW%J zqg~58a-sbR!Ac6xD=uAAR*p0`XIvs=o+nJC@!AI@u?L*fb6sg?her$|Pd^gJMy6kX zyY5=9aetfR0c3@|$s=BsOcoC~V2u4xFqbA7rlWwKMHLuT_IuR@E0N<;1(y5jqdklr zA18PT(&hJAnw&ypeXE(*jBty~<~W1~;xeKKN4`lJ4URwYtcit4vd9TpEPUi`Ko+~! znxf<=Hu;%f(yED6tR88cY6$)$k_sYx5+paB)@w47v$fpK_KbB9<-0uWWx$V$Y(nJvu4LwpP~GnArV?p7r+FCdX3sF>*+w zM8ps6Vm(S|1s-pS4xBiFG!w(f$;lxV0eSz9%%(EsBY==fcwRHDvGW Fe*-2SG_e2x literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Constant.png b/docs/api/media/images/Constant.png new file mode 100644 index 0000000000000000000000000000000000000000..a9c6f28b3591824c0732239096324984401092e5 GIT binary patch literal 752 zcmVOeFFcbb@qHow`d0Y;LfV5s^(xaR!&Cux=r_h zK>yEkwuWTri~;WM?zB!GySux2ODz7(wV9cj|EC>kUsw2=N7!5`|NsB+nG)o;ng6pi z?6#AtQ5D^iW&g!kh=_>Y-QAyDGK@(hpKnk5)xQ6t5&Et%|AnnE%s?=+VL4bRGY=KmW3S?UXD3%7ojB4yZ&Sl06&8RVDFrLHC>x|F0|m!)5=D zWMNxY|E`aEUP|_}Os8!{fqZ!Ru{!;~Pu+z8ja4uIq=V{$Q2oE5_n8Xrj{yJCdF-7Z z_OC#eKOFz28iqL-|EnYarde7~M!IDR)?gv_vy8A<63$a7|GS6&yh+s0%m2(~=8gyd zoe2K4Iq#eo+=dGO)q%E8AK!Z)?wTmWSRMbM5&y4||I~k!LLndTsj>h7010qNS#tmY z3h)2`3h)6!tTdPa001C#MObuGZ)S9NVRB^vO<`klZ*65{X<;BnX>w(EZ*psMAWc}i zkt!qr000(rMObu0a%Ew3X>V>IRB3Hx05CK!FfuPNGue__LI3~&=1D|BRCt_YkcI#b zK`4U(M2Pz6Icht~3ql2S@>nhM`5YqHd=mvh0y@s|8GK1fN}j>Ix{QKA0Y9^hBqh%T z(^Rc&DK|!G1|1(GJ`i8dK0M7tpHq-QLoYCi2h10jNsn_^VK8(|g2;!4`U}LlFfznw zDp-HqkjkAq?C=KG<_Aoa(CHB9TlWKE$_z ijGSU(oWd#~?*ag}r7qqQ?+~c~0000;SsO~ttNgt@c?ITUy+H?~F1$qJv5 zrj%inz4BS|lBY2XpN7wU95Cg+N6)R&S-Wy3tx4&gXH|B=yx^o^#sQu9?QQ>K8~%sZ z{0}Jm@7e#puI6oK)~nE@m)?oj|A$=pANt%j?acp}v%f-5{aU(vY0a7Rz}r@CC;s>y z_~w2^f9i&*uDiZCoO5v6`rY`9vHRwCT`RgWmp`jpSqZe)c-0rXl`kw;yt7~a!fK~g z=)5OIi*oZ8r2!qIu*ouQW?EwBb;IdTOs3w|UZw3aUl-^?yPlho&DXT%Y3a3H_piCa zH_y(z`J!&~1--@#`u#SZWfuag168_I91G66);c&DuZkdK$q?W#UzIB6L*!=K%vvBTz%$TUpUjQPxsc+FV-7 zR7zY|e1`Pi6Tt84q|K9b~#>w5dpFQc%z_t$REF)G#$AI3{PO zi`#}?{&3@lPKQ}}C9A8dZ}IjAKfWk!a7giqTGl_Y+%GXPku##9bLwQK<5PFJZ+-_fA85GosxS7-Us$eq7dr0=(3bNhOU@OqP3*jGIQ@yq)Vq6&7M{#q z477Sr{(QThn~}}e&ZN!sueoC0eDO%k^aC-opNFK(Oq=OhcEPdW>{HKZz2YNN!Y4j; z3AV^N{LRk&iIdY~8yo$^9eXUQx0}^%F{pl^sd+`+YMoB)e`)Cta&kM>a@MPsK9Ml& z)7M|AkoTXLcaDa}VO>_ z%)r1c1j3A$?$-SQ3W}AuMwB=gr6!hS=I1GdWag$a7?|iA80i}r-<%ZX1XQ5_QW2b= zR#Ki=l*-_nm|T>fo0^iDsNj}alvYxA!qX>A zNlIy8vJMV5*3M3^SKHChH*MR#g{~aNJ_mfmqwk-%q}ar&_F&=i{FJ=+5=XdFicd7L z@bKuq?cMu$iKN7hJ&QyoB>wp5$i&=np1gX8$i&uZ%B&^(gI6I0} zGUVzNQK6O$8{S zC}qw=9fKWQ#zRcqIUjNk==S15ts}q2y)L~lP}(>_ogbmaoJrJ0AgwbXi6JhpDPFKT z9$x~a$ENK7000SaNLh0L01EH`01EH{Laa2H0000WbVXQnQ*UN;cVTj608L?Ia&K*A zWNBd_Mrm?ocW-iQb0AGvyOAm+0000MbVXQnLvm$dbZKvHAXI5>WdJZVFEBDMFf-Yb zT0#H-0HH}lK~#90W8iRC=0FAv99%)3!YBe-))JP&C<2Chw%iuNNCHkg-d5alQo;xU z8CL}X4_hHdm;k$sti6G8pr((nFjT%dS9ocX$5n$N$)Tp@>xCyk+k0?wOgH`Q@&JYcT)s zdE3HL%*@Q>)vf*e_W$H#w30>t^on|8F81N2s;a8ZvP6i8i1*uE-QC^)@Pqg0b?wn( z|JsUdXkPpC*^GEfs*66hqd1H2uT%f=o&W#;+=l<-g2$mxWdJZVFEBDMFf-YbT0#H- z0Od(UK~#90V{n52MNTM#0YtFI1j@(B2XI0KbfYa?T|L!(nVh{iK>~u&X4;-2GBUh+ zO#b|wKmqRrZ4q7|2-S~r3FdcW5R3`;1aU+4g;eeQ#5oya13hJAO+rKM?S)kNjI5;@ zxP3%G@<6_jL6VUZKZ6*X3`AZi%uqr{fsw(ANe{{o(+mk>VPxPm*V5M)0)jA)NMTb+ zeg-!Ib2&Lxsjy^C=6G9UE@=igP7RJkK126N2W6fJNk&ef)1_7Xj9k=&ZABS?e6Z)F u#ckM?93xmje28y3`Ng@o#2KYQ-UR?_sW14`Hh}s70000AMyVi9{#UaQ0r%7Fss&l*vy)E6e!K$>FVdQ&MBb@0CA5htN;K2 literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Index.png b/docs/api/media/images/Index.png new file mode 100644 index 0000000000000000000000000000000000000000..6558ec393a6e0b35fb7776a52b4ca9c10da0d5c3 GIT binary patch literal 584 zcmV-O0=NB%P)sGc1s$KlTB|5tUFl&jIZ$KRg6;GCqm5-wl6(B`4Q;1)J+i=@-=`2U5V zz0~Rd#@X$9lDq;jjf$eZgrL)or^gjMgq*e3yWRhls?|-6=3oE-010qNS#tmY3h)2` z3h)6!tTdPa001C#MObuGZ)S9NVRB^vO<`klZ*65{X<;BnX>w(EZ*psMAWc}ikt!qr z000(rMObu0a%Ew3X>V>IRB3Hx05CK!FfuPNGue__LI3~&s!2paRCt^{$?Fn1@%ouFXELYW(Fj^6Z(U`)_51(-|7XseY25!>(WA}p^8eefzIoSOHBLL@ zu5c=u23 zg#EgG*R(4R8Bcv1+IdSoXt7!L5tEf~j@@~uVBhR|_Md6WYSZ+C#*073PQ0UAdtN0gNKbwkHzugYdUHQk=cz1X!nX~(+V z_vf=O_Fb>Npdzh8PLU=1Pe4dSL)YuZgf>gNH%uxGi_eHC{A4Kd*st(Y%3;N2oyz=} znqKw`%X@Y1uQTv0S!*U^fJH$hN@BTe&;g&?!xjVTG>^jPxS@?+*er933 sa(UjQ<*PC{8=_;sg?l=%aQ~mEp5P)i@yk~|9Z;Bfy85}Sb4q9e05`Dm_y7O^ literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Interface_logo.png b/docs/api/media/images/Interface_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6f223c479a6c6fefab504deb84ab824d2e744713 GIT binary patch literal 1600 zcmd5*`!|$%9DdQB9VXJcrO7tT6s8%5m)$T$<9->p85y@dE{&RXZA?TG%_2nB{k}w+ z>>y&K8JEf>)@4JEu#A%^x8$DGyKmbsyZ^yH=X@^b^L>8!JkR-jlN{|WrKJu_0RSLv zZDr;RS2P?)5fX5&yJ6f47l|;kH4TA4Ow2fl06^Tq(T-*gK@j``L!Zj}+HeO}zBX0; zizS_}vsy(-{E4`_@#vbdi+5fGm5%u5_tDdPtzuhX8qOmN&M4C`MSV{xS#?0cPBr16I(qS$$iDTJrh_s?O!p#8Hcm?#qi{w{Bl~rNTh%>k zux{n)ub}uDC~68~PeK9XP|o0n-x!qAyY4;;IgdbbU2Fb*kj)U}I`FAP@Yeb{ME(1wR2$S zCnkTzwDp5^%MQJH%Za}Qw(J@Sb}rN|#d2rO_**uOn}$u>PW5Z&eqR6^w@vF-EowJR z?ytf7pRC>Vy0c(Xy#ZElT5*>`i$x}PS71@3%2n|0Ix}zDrR23?#T;0%YIu7FmT6El z2Nu24DVZbXi)=HebP7bUa4>sWJ4d9GHAl=E1#c}<6Gn-tBHfgEozyY>%|Y;&c|yW4 zku#~q8L_(3kLUF3#=OE^@6x?8LyQ_DL=9+0x1A2}#zl7MT$&`ZUJ%&*xUeUhY#|}I zSN$R%Hj~6`#Raq+3+8G3+=%z@#4@=!KOxb#LH%4E&aW2hTXDiu02{99&efzpfNj@w zsn?)ZV`*i_sYO_)-;O(09;Z}d95XSL46I%8F`F_qo10kk0*qOr$PC`va_ndpbYvy|{2GJehB@IiF4o$aZ>K{XIGb8+#H_!n;6$gipr{DZ!g z{{X(k{~?NKvs$nq$xth|FaSV)_a(%J{)*XyhiJArolOn#XGi$37y!k`j};QcILGus zTQFISh!9pl7@9&C{EEZET*WV3Qx?OA%?t@f)0jaFfT*WU)YT?}FEiZ9@ONZdo1LLu zF7opRBrE~}wa)fRZUyglRb^$GxSn2Pg91AFWDunfuj18GhDIRNFt3KCaO!XG6XR&1 z28*aehm}!<>IiA_!AaB^KQ(Cz%0e>k6#30Eu? zFVRRBHaEw|$2T?#1h?9*(e0eWnYQm1Hr1B!cKi1WHPMl!yyD`-M9a|7P&O+nm`UBf zx#`hy(nM;f-efI&Ys=m~Cg$M5y1IM!ni-dtGv`C5w7MQkIj2kLO^;6v4}(M!NmW%J zqg~58a-sbR!Ac6xD=uAAR*p0`XIvs=o+nJC@!AI@u?L*fb6sg?her$|Pd^gJMy6kX zyY5=9aetfR0c3@|$s=BsOcoC~V2u4xFqbA7rlWwKMHLuT_IuR@E0N<;1(y5jqdklr zA18PT(&hJAnw&ypeXE(*jBty~<~W1~;xeKKN4`lJ4URwYtcit4vd9TpEPUi`Ko+~! znxf<=Hu;%f(yED6tR88cY6$)$k_sYx5+paB)@w47v$fpK_KbB9<-0uWWx$V$Y(nJvu4LwpP~GnArV?p7r+FCdX3sF>*+w zM8ps6Vm(S|1s-pS4xBiFG!w(f$;lxV0eSz9%%(EsBY==fcwRHDvGW Fe*-2SG_e2x literal 0 HcmV?d00001 diff --git a/docs/api/media/images/L.png b/docs/api/media/images/L.png new file mode 100644 index 0000000000000000000000000000000000000000..eb334edaeac52e2f473ffd92a49b025fb6148ec3 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*$P6UUaa~gcQtTz3zOL*Scz79Am98pQqyvRG z3p^r=85p=efH0%e8j~47LAC&&5ZCE_)&Kwh7Y~}?0Tf{>3Gxg6&+v4+fftY`;pyTS tQgJK!NBsYWhyUvpj=8p5Ib^(%U@*zon(m*SoDEdN;OXk;vd$@?2>{+EE2IDb literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Lminus.png b/docs/api/media/images/Lminus.png new file mode 100644 index 0000000000000000000000000000000000000000..f7c43c0aa3bebb499e86eb744b1e47b9a9445ba7 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*!VDzYUPT51DfSXiUsv`EJiLsmQh${X`~(Vd z7I;J!Gca&{0AWU_H6}BFf(8LTA+A9B|NsBf`>KHqVn8Lk#c`lIrjj7P;QtIyw;Ol? zc?O;?jv*Ddk_A|pTm=*lC~zFVdQ&MBb@0OtiQr2qf` literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Lplus.png b/docs/api/media/images/Lplus.png new file mode 100644 index 0000000000000000000000000000000000000000..848ec2fc3bbaab6345864c303684ff8a86559cfb GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*!VDzYUPT51DfSXiUsv`EJiLtR`ZJfMMF533 z3p^r=85p=efH0%e8j~47L4yFF5LY1m|NsB#ebqn)F`$y&;y6$pQ%R6t@PCG<+YP*c zJX22>$B>F!$pS1)t^$e&6gZd#)XV}^6#`leL>0XheB5$;*x1}$U0qr4a0#d>%paztiFSddoE z=FO+Zs9v~B@b&OYf=WY?JVJfcJk32QO)AOb$urFVKXE`Ry)jqsH71)XJB8YEt>{GE zGvwvuGqv|cy!A6?%sp|-T8&j?o?bnP-A{*1r^4t+dqpBkBPV|V>IRB3Hx05CK!FfuPNGue__LI3~& zAaq4obW?9;ba!ELWdKcKV{&h8Wn^h#AVz6&Wp{6KYjYq?Si6xbBme*ayGcYrRCt_Y z&;kMn2M1Xdeh6R)4Ab%Sw6|x9hYPq^SqVCeF?quTBwVb*o#mC81mFUy;m%?#?D`xC z0cWuYe|IAv4`YZxESp$_l#sZsh-s)UL?ALUMqSb?I@nP<)JGU7U}h%a#vI_K=%}q7 zq~RmZ$N<)8;N{4}qYx4zCu$87;NdY>VCC|)P=g6*o7-s0FmMCSfC?zsMKS0(@xufx vP5c-vI3ex;lft~dN-&p#Ny9iND4!ny)Wjn48}#yJ00000NkvXXu0mjf>`)kw literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Page.png b/docs/api/media/images/Page.png new file mode 100644 index 0000000000000000000000000000000000000000..ffe7986ee2e78f7079d6de1a13ef29bff125f7a8 GIT binary patch literal 592 zcmV-W0wTQkb(FJYg{r&I=J@>oPidBsr@_|i|DM0#0xyTVySs>p zi0u&l@7S9O=i(&oFz-*}d|5-wk#ve_0k zZi}ST)an1e-~WcE$O18qgrL(EJcN#?$DzRBm8#XK#^imQz1B}9Gynhq32;bRa{vGe z@Bjb`@Bu=sG?)MY03dWlSaefwW^{L9a%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22; zDkJ~^02XvbSad^jWnpw_Z*Cw|X>DZyFf=bPGA}SQ*^*j900025Nkl8X^a6$`;}MU&lC(fZYGN)*U*T&WTYe`t|6?P&^gvL>{}6e8nl zLI{`JKlCFG|LqoMkSE{iD56H;IN0Sraje`6bqbr=>+Ac4L(v&iSUtNMDLgY2KvhT^ eCV+sH1<((?kR=WgbuC-~0000)GO-L0AERF6v)dP%qbhFs5=j^@`6F?l_(@;?;SYFPR0 zI9jbQwZey3=y8ba9+c^JAk$@k`bNJ*XM8mL<6q0r!V+YD551g+rvHRYW=KB^jl71Q zyjUEXf%<=gv{N57&;Ray_CaNWG~<7$j7xBl@^MHtX718|yz^v1Gcq;sXrgWOL-%8| zeAujcX!zyfo16VFq#9G>J(EnWtL=RyR-0NB6V)oy zRmEie9Z=A1gd35_HMMe(FE?E78WVI3@nv91+wgViUAV!rpFqJ)Wl_to!seceCS_?; zZ;4o$E4k0B*A>>Q@@^>L31o}zmDNbO)e5c<%)AP+E5P*1yXjXRr0_e>m1)_fP3L*4 zq>@`n#eK};ri8-Yv`eDs;=aU7t-G*r(;{fc=?O5OKSe$`R3j_d*nP9?x%J(%fQEH%67mU3Hek2mE8BI_V-TD<8{d?o6-ef!PG`p%c&+4{j^aUgcH zPg_HSd3If0jjtfvXN7{Bm9@0` z{!FFF(*y6@p7PEXiOALIn)UNaUZG?FMfe@usLHF4iAJOOeEx9SoR_ols++f6a=J|s z5ggQNwU#-2UgKh&U;x$U?l6kKlg`fF$Kh~T&%}(*P&e;MzM$e1iDYH5)s7SzdNQ)O zW|LFc9?jNAIaVEr_>4^{Y;|6Zw5lrHumeb(iS9?J(ExtAVJMHD8w=kA5FA7#v<61y F{sZ~k(bNC{ literal 0 HcmV?d00001 diff --git a/docs/api/media/images/PrivateClass.png b/docs/api/media/images/PrivateClass.png new file mode 100644 index 0000000000000000000000000000000000000000..470e6d5684f29e52abb36ee6036a4d0b717f92e4 GIT binary patch literal 790 zcmV+x1L^#UP)WmEhNm^6>N2zOCt|Fuvb2MPgIr%?-{0R%gxJKy#3oLoEQio1TB$RW z>}rOS@9*z3X3RRU*Z=?jNYVd(pWkzHbE2lGGqCn7nbbf>Stx6=M8@%WtGpvWd{9$d zW@ctxl-^f`)gwrPNl|4eO^Yjd!Y3yuC{eAu(Bd|2#VxYmFkYoDiPgf`>UMyN)z#HS z%>A{^=P{-CPSgKgi`geqs99WJM7{YbYtFRD+-aQPBu9}dn9Ep?+$&_jF0SJ+!SP*W zX)~JcM@?QQa<)}jTP=IfF8)Ib00009a7bBm000XT000XT0n*)m`~Uy|Aaq4obW?9; zba!ELWdKcKV{&h8Wn^h#AVz6&Wp{6KYjYq?Si6xbBme*a7IZ~ebVG7wVRUJ4ZXi@? zZDjy3G%qkRFEBINl3GFl008buL_t(|oMUj)Q(}VxtyFm#HwHbAypTdL(6@<=mvd%N zQkP73cXv}CPB4cExH8Hr zR9dNMl-WZB*f~Ua3V1C`?H#MY0*R^toKm_>URD+2h7KTs7*P=&Pi7Gj&r(CfOje+P zFt?7JoTp{7PL{MZM8L#S&O(+`PDicC$POfs3ly+qPy-6^M{5QG1%xD+<>aCiZ7tPU z^H~Lf0(?n|mdsYno>sEH;pIUBhYhhT*-1^kj&-m>@4F3035e9 Ui&^Ep{Qv*}07*qoM6N<$f)e~=1ONa4 literal 0 HcmV?d00001 diff --git a/docs/api/media/images/PrivateClass_logo.png b/docs/api/media/images/PrivateClass_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..590e00640baeca2f541347cc1c5067c255030bba GIT binary patch literal 1836 zcmdT^`&Sa!7N)T^!|2#(lU~J2d<$xV*reb%if{uGAB2xcCr~6EBoS~N3`R%8oA1Z9 zjI?x2^HGvbVw2{xv>MSY!8DVxe2kTOO|w!{=Jd;~yVm^+?p|x3z1KPWoOQnaedlBa z1?)G}hv`Eg5JNJFKm!r}(V==^BvfbjfuJYElj%?>bo^=HBn0wFeULw$sMG1d%HLKu zxBzkwfr3JzfTUsI<@w&3l8(u&mT`$j!bTAk>Lj{8{G)6;Xhe<^xY#~9JI zx3?b|Ud!owO;hVQDqYy%2IZmdeCu=a(B{wGi%O+3M75INIh1s3f~0znAN+9Y`W*B2 zYFSHH*zMJT-gTef-zyY~$j*1CuC)_;*9A8gz*V^|uYx-Nq_)2&cB}^f_O_;`#Wz=Dmm0WGd_5vmZPn;Z@Y$?s-xl010-LVn-j7_WpUmV?gQ z#@BnsDCw;D-Mk{e0y63*g(>ik5-}JIM`rWR*c|KVbAjP(z>W_i1`*!8_i(%|;{uGC z=1*tRXf#K<;z00WJ9@QwgxE5?z#+KKmR3oohFArc09Du>_{D}=45RaiWSTAcoE0S( z@N0$7w#FA*`D6m3Ej=?Wu_-VQ{;qw(T^K2l4WQn_MPTm22Kq5Uga8S_V6a;oN&P@u zQzBZxL5Q(6h7b}0@Ff42os>5;w6y`Ds8kaR|6@St|4;V1Z*vQP`#GOQZH!5*#rSH(*E!w%R>-W{9c69(j2#gn5S*Pqeeq^v zzkL7CbksY8FY>ZH_y6!U8jYr2bRG(APR1>F*_YGqtw{Yg0`Hk*&pV0b&!3yS)ld!| zn-f5urNP6I+p~<`D6nDn7fewiT>32o*H`kl6t(#{?$F=*N%E5432(0YCHDnRmtM{%F+ZC$WQDv++M6`c7mUI8vfQsyf=ACU$>$DI+n##uKp{O$Xh-}+|U_|mnTX|Q;*F+<{u+T@*V3jZ|K z&~S*U?dR?=dYp2%b8#zklwvgU3(HA5ZJ*GQU#Pd#ydxV9O*j5)xBk^zxanB&!TRJbl+-sIOMSY7+S!-!q6vOvO6U|hJ<$tucw(e2>IopzU zf2Q#2*c**a=_FsApXeEHs+lu9>UQWW!OhK72-@dJnVPY@2A%?hObj3>@XYkT0K34m Aj{pDw literal 0 HcmV?d00001 diff --git a/docs/api/media/images/PrivateMethod.png b/docs/api/media/images/PrivateMethod.png new file mode 100644 index 0000000000000000000000000000000000000000..d01f2b314b973da7318cdb98a71a326f383e5864 GIT binary patch literal 918 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJbFq_W2nPqp?T7vk7#J8E0(?ST z|NsBrx}lMUpA{(2slZdYq28zK9FXna5yY)2U{iVAD08bu#A0RNsVOVc1TDmPHTipb zdQ55!GnYS0Uh*_%;nVQBj{~OMck8;@+}kAODC6$#?$PP#(BP7mmKGHirRd(Fy|8-qYX6HC z9+&iNuNW;|w!-GTq4$nAHfL?^c7FHT`aNmOeB(356Bn%kIv{R`xBWrwnKNf)W>PYjD}zLwkAT3uZo(G~1G(Z;{#vR6}oNlA%PpSD}U zF^_6j=PGB;3=*#Y$WwN}P*Q6H7Al^Atid zb5j`%O!N(m^bL$}PKt5@s!#x_2+mI{DNig)W$;Z*F3QhMP037DaLX)8Ezd8?E>`f3 z*ga881*rD2r;B4q#hhdTK`}8wQQ_$c$qh{j*4F9e`#W^>b~G%TwQJr~Z#{D#1vl?l z|LazJX0WSGSg|%ebAsU9Bi!N!<-8wzw);;`Y~fl`b(`(zvrGw95l%-IFCTC1&!2ls zzwGV0^wWWiW15+nU*5!-t};9e3k&TQp8P2% zX10&@>Zv(AJSVl5iLPpE{gyxy^(5I^ sFWFixmIS`k36rN!*Izp!t?eTtSH52M{Yh~%f!<^AboFyt=akR{02;ETy8r+H literal 0 HcmV?d00001 diff --git a/docs/api/media/images/PrivateVariable.png b/docs/api/media/images/PrivateVariable.png new file mode 100644 index 0000000000000000000000000000000000000000..d76b21d4e9e8656a68989f007945ab14507ae23c GIT binary patch literal 772 zcmV+f1N;1mP)%f|KD9dx9b1xbjG4eNtEH2jam85a{u&(X=GITZxLbNk_B|L=MK=xa7(sn)kg@8o`zfK1-9S*@a5ux7 zfmfd7&Z|n=(z?t5000SaNLh0L01EH`01EH{Laa2H0000WbVXQnQ*UN;cVTj608L?I za&K*AWNBd_Mrm?ocW-iQb0AGvyOAm+0000MbVXQnLvm$dbZKvHAXI5>WdJZVFEBDM zFf-YbT0#H-0Od(UK~#90W8e{Sh>wpK_v7H<0s#g#e~U6rcWa$YHYh)|I4&;C+*d}O z2f|lomMalTR8dirW#a+!op`m(q>74+J*{+kKztWlvm~$d^mHFbLpC7aKvFO=TL8$- z(9YH4VPIntQ#1*-Nlnd2bB@(uW8hJbF68FUi^)(>aJDaCV_;(~R6mrqkrNJ-9N zW6+HbC{^VT@L*JM&I(uJVNf@UHVOzZ($7!fbQ1-dZx^5&WvUzCEm6)Q&B_DjGcf1| zBm@>j=z`qG8lcY2t!~7v&IWNmtEDgym~unB%LM?}VJts-{;Z7v0000paztiFSddoE z=FO+Zs9v~B@b&OYf=WY?JVJfcJk32QO)AOb$urFVKXE`Ry)jqsH71)XJB8YEt>{GE zGvwvuGqv|cy!A6?%sp|-T8&j?o?bnP-A{*1r^4t+dqpBkBPV|V>IRB3Hx05CK!FfuPNGue__LI3~& zAaq4obW?9;ba!ELWdKcKV{&h8Wn^h#AVz6&Wp{6KYjYq?Si6xbBme*ayGcYrRCt_Y z&;kMn2M1Xdeh6R)4Ab%Sw6|x9hYPq^SqVCeF?quTBwVb*o#mC81mFUy;m%?#?D`xC z0cWuYe|IAv4`YZxESp$_l#sZsh-s)UL?ALUMqSb?I@nP<)JGU7U}h%a#vI_K=%}q7 zq~RmZ$N<)8;N{4}qYx4zCu$87;NdY>VCC|)P=g6*o7-s0FmMCSfC?zsMKS0(@xufx vP5c-vI3ex;lft~dN-&p#Ny9iND4!ny)Wjn48}#yJ00000NkvXXu0mjf>`)kw literal 0 HcmV?d00001 diff --git a/docs/api/media/images/StaticVariable.png b/docs/api/media/images/StaticVariable.png new file mode 100644 index 0000000000000000000000000000000000000000..8e820193cf930c4147eba542a1b50626933d1f42 GIT binary patch literal 688 zcmV;h0#E&kP)ugtEVnh;=iW%reFK|K(=fyleQ_jJUz6HFV9ct*geON>7>N>(GgmfJ|kL+1=gU z^~Y`c%U_K>y!eySuyp^oG^8 zOJ%3#Pt*VAzglvk(fQzS|Kx&gliM$y+%{plJI?=wq~ZVfjLxV|_|0oEwD7g7kJ`IY z``=&x-kSgDYyawSp@vA;vQq!uhw#*m-@tNLp5*`PleCyn|MHYq)&I_`O8L%mFH&Tq z00009a7bBm000W`000W`0Ya=am;e9(Aaq4obW?9;ba!ELWdKcKV{&h8Wn^h#AVz6& zWp{6KYjYq?Si6xbBme*a7IZ~ebVG7wVRUJ4ZXi@?ZDjy3G%qkRFEBINl3GFl007WQ zL_t(|oMT{NQ!(J+;Bd9(Wn%#W1{OIVrx+F&;*6wS&87O>I`iFMG>&~Wn?kpl^s3aTqPC~9aZgzBhqu>l3V zEJEUe@?l}Z!7lo83@mJN_9niTy1Jpl!gdkiKmisO)({&oUzpiX1}q>a${hye3fnpI z39x|#*m&f1fLvyFNkfn=ASHU{Ea4lA_OTmCm4hW!rK?49w W#UB-s5zQI^0000H> zJR*x37`Q%wFr(8NlNmrkwg8_H*Xe!L|Ns9N51QZs6k#d}@(cdY@N~O@7mz3J>Eakt raVz;p{QriB|LYZwxwcz9n9R-~pRXx?mgVYJpb`d8S3j3^P6#nkpi;(?AirP+hi5m^fE-m% z7srr_TgeFwOpI(f46|1#2yiGY`Di?KiU>FVdQ I&MBb@06e2A@c;k- literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Tplus.png b/docs/api/media/images/Tplus.png new file mode 100644 index 0000000000000000000000000000000000000000..2c8d8f4fd38259b2ef70fc63fad505fb0a0f55a4 GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^!ayv*!VDzYUPT51DfSXiUsv`EJiLtRLI=-jc>;wv z3p^r=85p=efH0%e8j~47L4yFF5LY1m|NsB#ebqn)F`$y&;y6$pQ%R6t@PCG<+YP*c zJY!E6$B>F!$pS1)t^$e&6gZd#)XV}^6#`leL>0XheB5$;*x1}$U0qr4a0#d>%86hy4NT6+w`tp00i_>zopr0L}p{>Hq)$ literal 0 HcmV?d00001 diff --git a/docs/api/media/images/Variable.png b/docs/api/media/images/Variable.png new file mode 100644 index 0000000000000000000000000000000000000000..8e820193cf930c4147eba542a1b50626933d1f42 GIT binary patch literal 688 zcmV;h0#E&kP)ugtEVnh;=iW%reFK|K(=fyleQ_jJUz6HFV9ct*geON>7>N>(GgmfJ|kL+1=gU z^~Y`c%U_K>y!eySuyp^oG^8 zOJ%3#Pt*VAzglvk(fQzS|Kx&gliM$y+%{plJI?=wq~ZVfjLxV|_|0oEwD7g7kJ`IY z``=&x-kSgDYyawSp@vA;vQq!uhw#*m-@tNLp5*`PleCyn|MHYq)&I_`O8L%mFH&Tq z00009a7bBm000W`000W`0Ya=am;e9(Aaq4obW?9;ba!ELWdKcKV{&h8Wn^h#AVz6& zWp{6KYjYq?Si6xbBme*a7IZ~ebVG7wVRUJ4ZXi@?ZDjy3G%qkRFEBINl3GFl007WQ zL_t(|oMT{NQ!(J+;Bd9(Wn%#W1{OIVrx+F&;*6wS&87O>I`iFMG>&~Wn?kpl^s3aTqPC~9aZgzBhqu>l3V zEJEUe@?l}Z!7lo83@mJN_9niTy1Jpl!gdkiKmisO)({&oUzpiX1}q>a${hye3fnpI z39x|#*m&f1fLvyFNkfn=ASHU{Ea4lA_OTmCm4hW!rK?49w W#UB-s5zQI^0000(x0NIF%{nuT>i_6Z|J+03z&LVrQvdj0nPvbd zPMvIEmeZ?!4s&x# z#i%Uo#W*vP>T-Bh-n}vA&qc6+7`mT2TL1t632;bRa{vGe@Bjb`@Bu=sG?)MY03dWl zSaefwW^{L9a%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22;DkJ~^02XvbSad^jWnpw_ zZ*Cw|X>DZyFf=bPGA}SQ*^*j90002ANklU5Ub z)J&2>v72qTTu7E`nx@t2xdQKkZtdZYg4lY+yP)e911YGU#WzGE3Im~vZA6xzk`9>4 zNL8_RMr5ZhnC39*aq{=8RR=h(7tdcVhw%9H0)imQWkC?GbCM*z2n^6y_rKc*n=K%t TSg55|Cs*qzIWRJ6ld^s^>bP0l+XkKHvAUX literal 0 HcmV?d00001 diff --git a/docs/api/media/images/file.png b/docs/api/media/images/file.png new file mode 100644 index 0000000000000000000000000000000000000000..0bb2427f8afe94b50835b0a6fb2f7fc4b6624bb9 GIT binary patch literal 462 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+o!2~3GGZMc6DV-A6h!W?b)Wnj^{5*w_%-mFl zkkV8IBTEIZ#5@Hf0|O%FdgViBVQqh^b}u-UUD* z&H|6fVg?4j!ywFfJby(BP>?0v(btiIVPik{pF~y$21Zp+7srr_TgiX^|F>tp*udH$ zEiL_V#ftUo-3uDh%uP)G{Qt|SZB_7q!9$E~2FI`q8Re^|Ns4w54;**JyG{r3reJX3bz{Zf3vmrZqg`n}6P+S5*tz>i^H* z#2~u%W)Z8#mr%xxhMwd+SvmjaL%%Odb!ew<(5(2Ban^6jjOpAT8-5&KS>(Rw-29d% zNdZfFap?uEMT+k<(v+DOT$Z%I^ZS1lw?N{?lj=*DIus0-A5UO#>EQ|b(2vWFmuh=~9H|IVo^qIey?Dz1hsy_{P4Pvu|$000SaNLh0L01EH`01EH{Laa2H0000W zbVXQnQ*UN;cVTj608L?Ia&K*AWNBd_Mrm?ocW-iQb0AGvyOAm+0000MbVXQnLvm$d zbZKvHAXI5>WdJZVFEBDMFf-YbT0#H-0F6mRK~#90WyotAfiM_=;n!)RO))lyYKg9G zDu)jI|9{59Wq7{b4-9^S|1r5?yt?|k_gEL_vSjsQJ~o|}aLiJr)OMPgdUXK!BBdrI ziX117J(mLBNUinDT$y2+3p0|WwfAs4W|lcJ!*ci>ABPQvf>`e66oz{@WlRWx5Nh&6 i1*3pkRRDgc|J5D1CKP}NM>^*K0000|Jy16 literal 0 HcmV?d00001 diff --git a/docs/api/media/images/function_folder.png b/docs/api/media/images/function_folder.png new file mode 100644 index 0000000000000000000000000000000000000000..8b3d6e3b12902fd6de044496082464dbc7639d42 GIT binary patch literal 605 zcmV-j0;2tiP)|{;@VQH zutK?#8|2oVPNX5otuVc-H2>T~`qMo_z!(4RRPW0<*~LTu^jkBj5P!Tt|K&_$wm39v z5ILL=BqI z!r&0NoVJJLDxgp-+TMLq>XzlVuBikpI}FsMP+>!akcx{yaKxWv;lIWQI-(jqRCU$Q00000NkvXXu0mjfHW&%O literal 0 HcmV?d00001 diff --git a/docs/api/media/images/next_button.png b/docs/api/media/images/next_button.png new file mode 100644 index 0000000000000000000000000000000000000000..cdbc615d994890b8d3b5ebe89d442ea1d0bdcf33 GIT binary patch literal 657 zcmV;C0&e|@P)>%!0InVFe0X3Tk++2-cv|NsBJy}eg}(|db+t*x!g)adv3 z_j7Y|rn=z0$>ZMM-tX`4KW@&Ajg7^{#b#z^wY9a6sobTdrOeFC+TiVjgM-%A*0aLm zTwGj+qT6qh*h+WM*WK!7W@ee0nXJF&WQx{%o7>so?BwU}l&#?3;^@xa?}MP(t-ap6 zEIdd6000SaNLh0L01m?d01m?e$8V@)0000MbVXQnLvm$dbZKvHAXI5>WdJZVFEKJN zFf-)xbMgQH03dWlSaefwW^{L9a%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22;DkJ~^ z0ZK_kK~#90g_GNIgCGzd~1b@PXAis>##hF-Lcwks_T5{Gt1=G+~a%dFwQCnQZU3J+k?=iHfkBIVqw%X0=b%mMM4MWsfC|3Za zJLI<3MRLMm2C;EFN?uzwL|DX3a6V)!kcPBr r4(}qx0<9ZuvwaL3$t_-E{1p8KSMoIIFM}#&00000NkvXXu0mjfmFG8p literal 0 HcmV?d00001 diff --git a/docs/api/media/images/next_button_disabled.png b/docs/api/media/images/next_button_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..4a11780fc0ec50dd27cdb6a52f863c511e32b61a GIT binary patch literal 543 zcmV+)0^t3LP)D z03dWlSaefwW^{L9a%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22;DkJ~^02XvbSad^j zWnpw_Z*Cw|X>DZyFf=bQGA}SQTlLsPeLfOt#LNVQ}_yWVA&J!XM&=yzgAag0bSrwNq7QKuW}AeCmE|^Nojv;1W49t( zJ^R_7npd}q|9AEYBEEOSPL(b=(wtUnF~5x!^#c9rjMvp>dVHd>fI6h^x!+-x^4?w{ zA}`WpEJtxdM>gE74H3rQb1zDxCZhMp#IYTl92jdPHrzr4kKJTmn+Eji>=$zWWK{du hHd63A_=WQ``UAH88gT1vi|haZ002ovPDHLkV1oT`@4^58 literal 0 HcmV?d00001 diff --git a/docs/api/media/images/package.png b/docs/api/media/images/package.png new file mode 100644 index 0000000000000000000000000000000000000000..b04cf566d4ac41fa95f87664cf65325cc51e8a64 GIT binary patch literal 668 zcmV;N0%QG&P)t@djQ|x-^8(p z?4%BxbRnvSIo8(J;;cKFW&rs3_^P0a=H}+Wz`&@4HsP26zocrIZ4l3l0QR&iRXPBo zdnn+jGIdY@nPvdLr+C=OsEk?wl583Es}SUx0Hl8}w3Siws0*g0p<_e<_q#u(c^k{N zhsBHlt8)OYia^7{zq@__-VIW3na%FdKa%*!SO<22;DkJ~^02XvbSad^jWnpw_ zZ*Cw|X>DZyFf=bPGA}SQ*^*j90002jNklc}6)3g8( z2ru$H580mZyrWAbSccU12f~7K5mUsGBX6FN7o9)y4In#v$>W9q0000@uL8oa~j{sfyu2e|KUjW+DCy{0JN1+^UXT2cmT$oA=$Mq|M6Jhn+c_M3;+0E zbx;8R*gvs`8movsnPvdrmjLt9Kjg6{xsNKVeGbg7FZ<$8{qAY-)kDUkCzNLg*TZiA z)ja?7TfLMa+qE&-lK}C{I^?=9yq74~zG|$36Zh6a^rZm*+(ZBWW~z4x;hqqmcOiRJ z0IiEc|K?4LUIG8;Po#Y-wvr&V>IRB3Hx05CK!FfuPNGue__LI3~&Aaq4obW?9;ba!ELWdKcKV{&h8 zWn^h#AVz6&Wp{6KYjYq?Si6xbBme*aqDe$SRCt_K&07n zYC8yeE(c9}CP^I;-Xj?!ixGY5~lHzpft}vlT9I`brT10000%q?FnVFe0X3Vv2q^)rKP2vv)}0J@jq_P*4*ihjg4kzX1%?=#l^*vtlzDzt>WeD%*@Qz*49dQ&}@*_ zgM)*ny5P~$Sz@EU>hb z00009a7bBm000id000id0mpBsWB>pF7IZ~ebVG7wVRUJ4ZXi@?ZDjy3G%qnSFEBIY z@^kV4001C#MObuGZ)S9NVRB^vO<`klZ*65{X<;BnX>w(EZ*psMAWc}ikt!qr00BTr zL_t(|oOP4!R>L3+K%uvC@aN(<}}S| z_cY8cJz7aQY#zo&M2jq~x36itf~8liMJ`!c@Asvy$I6;i&)Dnru()HiB+edazpMKd zEoJN8-)<(BGm@V>Kss~sJD&cma7A&3Rf z-i?ioW@cust*yny#e;)`TwGjcW@ee0nN!N#@Bjb+32;bRa{vGi!vFvd!vV){sAK>D z03dWlSaefwW^{L9a%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22;DkJ~^02XvbSad^j zWnpw_Z*Cw|X>DZyFf=bQGA}SQx z*6k)+-YhrkG_XnH4KgoalbW`Y#C%zLMG(A8#WIe0Sdy)s;aR#>iI`s&ukbi9->Bn; zl^kv0>?j`lHcTk$X~oOxj`mj&)#BNTkGP5zKdfml{jyB_s;gQ~-J%yw(;cg&WqD+e z@4Tv&%scxQ+Swu0bZj8*=8QhlX_YI61C}V0RhrpeSIKn$X;_d%y$~5a%u?9ODEgSKg~J500000NkvXXu0mjffsXN< literal 0 HcmV?d00001 diff --git a/docs/api/media/images/private_class_logo.png b/docs/api/media/images/private_class_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..590e00640baeca2f541347cc1c5067c255030bba GIT binary patch literal 1836 zcmdT^`&Sa!7N)T^!|2#(lU~J2d<$xV*reb%if{uGAB2xcCr~6EBoS~N3`R%8oA1Z9 zjI?x2^HGvbVw2{xv>MSY!8DVxe2kTOO|w!{=Jd;~yVm^+?p|x3z1KPWoOQnaedlBa z1?)G}hv`Eg5JNJFKm!r}(V==^BvfbjfuJYElj%?>bo^=HBn0wFeULw$sMG1d%HLKu zxBzkwfr3JzfTUsI<@w&3l8(u&mT`$j!bTAk>Lj{8{G)6;Xhe<^xY#~9JI zx3?b|Ud!owO;hVQDqYy%2IZmdeCu=a(B{wGi%O+3M75INIh1s3f~0znAN+9Y`W*B2 zYFSHH*zMJT-gTef-zyY~$j*1CuC)_;*9A8gz*V^|uYx-Nq_)2&cB}^f_O_;`#Wz=Dmm0WGd_5vmZPn;Z@Y$?s-xl010-LVn-j7_WpUmV?gQ z#@BnsDCw;D-Mk{e0y63*g(>ik5-}JIM`rWR*c|KVbAjP(z>W_i1`*!8_i(%|;{uGC z=1*tRXf#K<;z00WJ9@QwgxE5?z#+KKmR3oohFArc09Du>_{D}=45RaiWSTAcoE0S( z@N0$7w#FA*`D6m3Ej=?Wu_-VQ{;qw(T^K2l4WQn_MPTm22Kq5Uga8S_V6a;oN&P@u zQzBZxL5Q(6h7b}0@Ff42os>5;w6y`Ds8kaR|6@St|4;V1Z*vQP`#GOQZH!5*#rSH(*E!w%R>-W{9c69(j2#gn5S*Pqeeq^v zzkL7CbksY8FY>ZH_y6!U8jYr2bRG(APR1>F*_YGqtw{Yg0`Hk*&pV0b&!3yS)ld!| zn-f5urNP6I+p~<`D6nDn7fewiT>32o*H`kl6t(#{?$F=*N%E5432(0YCHDnRmtM{%F+ZC$WQDv++M6`c7mUI8vfQsyf=ACU$>$DI+n##uKp{O$Xh-}+|U_|mnTX|Q;*F+<{u+T@*V3jZ|K z&~S*U?dR?=dYp2%b8#zklwvgU3(HA5ZJ*GQU#Pd#ydxV9O*j5)xBk^zxanB&!TRJbl+-sIOMSY7+S!-!q6vOvO6U|hJ<$tucw(e2>IopzU zf2Q#2*c**a=_FsApXeEHs+lu9>UQWW!OhK72-@dJnVPY@2A%?hObj3>@XYkT0K34m Aj{pDw literal 0 HcmV?d00001 diff --git a/docs/api/media/images/tutorial.png b/docs/api/media/images/tutorial.png new file mode 100644 index 0000000000000000000000000000000000000000..bc19737521daf3fdf8ba84693a6c1db275587a5c GIT binary patch literal 431 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJbFq_W2nPqp?T7vkfZXr^pAgre zprHL{KJDGRx2LCv!T8Mo|NkA*ZeG25wYa$W-Me?omMzQgdGzervomMTq@|^;S+i#5 z%$Y4ME$=`5xp(j0`I}#l9z7Zv8M$@qR-kNkbv01-`}gk!y^mPGos9)r!CBxDS#iRWF{)OWfrBD=NDxcEBHq2o~We) zR4WEj>s*wYSdy8arx22vo62BdqHkafM2UK~>Od6>JzX3_D(1wVzsPr3frB+*)nX0d z)r+?ozWcww_=ZWek(`gs#BPRvqA|;NeJ*kO*ruqfcq}a9c#C3L?KpBF@G1}eAg_> R{R!w;22WQ%mvv4FO#oMzwKo6& literal 0 HcmV?d00001 diff --git a/docs/api/media/images/tutorial_folder.png b/docs/api/media/images/tutorial_folder.png new file mode 100644 index 0000000000000000000000000000000000000000..2a468b2a06fa3424ba94773373637d424f91f7e0 GIT binary patch literal 572 zcmV-C0>k}@P)>~W@cuiqoe=KGyn8k-rnBK%*_ATKmXxKdU|^Q=uf|NmyHcL<7#inXPLp`VEqaE{#o000SaNLh0L01FZT01FZU z(%pXi0000MbVXQnLvm$dbZKvHAXI5>WdJZVFEBDMFf-YbT0#H-03dWlSaefwW^{L9 za%BKbVPkS{ZDnL>VIW3na%FdKa%*!SO<22;DkJ~^0HH}lK~#90Rm|HGfj|I&;Z-?S zTE~>lvDmU9)2vA$a-s45?_+lx7yird;s>}vSUUa%B5*H?0lB_-jxz$}S+Eu>Tci^} zf*_zRSBAc7nwO;j`bo#VVd?HJ70@Hv7$8pt&R;?fo08O0cTlDBo5&$ zS2)D&L_ip-Xv-c3iad`)mSr0V%M{(b3i`Z5_cW1MYXWTY*ZT`cP91=4{NC>X0000< KMNUMnLSTaQ$PWMj literal 0 HcmV?d00001 diff --git a/docs/api/media/images/up_button.png b/docs/api/media/images/up_button.png new file mode 100644 index 0000000000000000000000000000000000000000..ff36c59356d1d67cf8c4d12cef7b5aff7bf4dbc1 GIT binary patch literal 668 zcmV;N0%QG&P)%Pk4nVFe0X3Tq=+TY{p|NsA1fYZIby?c9mt*x!i*Xj57 z_j7Y|p0wcB-0AP{?>}zNjg5_FW@fduwWXz{lda&z#l@+-;@;%(Zjsl_%*=y>gJX); zOLx%L*4A8HT!y3E-rnA{#N%dWW|^6pp||AZ=k2Gu;O6G$tG?unrQUFp*;j$nOL)=N z-H!7B000SaNLh0L01m?d01m?e$8V@)0000WbVXQnQ*UN;cVTj608L?Ia&K*AWNBd_ zMrm?ocW-iQb0AGvyOAm+0000MbVXQnLvm$dbZKvHAXI5>WdJZVFEKJNFf-)xbMgQH z0aZyvK~#90eUl4s!XOZUanyCl+N~BSZdg%F=FV*U|Nm|WGzj(aC4Hp#g}ZVbsUwYZ z&Rzjil!QBIZEnCM*G;mFfhMO*Sgs&ijd4EZ4F>=mqdHh2`yC0Klf6aD**dot!!VqZ z1kM^tYtrbhSZY~S)mve)l_6jX>4Z|XyI6o$PsyzG!CTd_u;_}+68;72Gqbc*E#XaG z{1KHkUhfaBA749OLuPS0vpzyLTx|WwI-s@b{QWyw?8=I(yrMOhmdva(hL@P@CDfl= z3@+A)(FIx?d>#r*+a&qgfBjDR2CScBhYVBOmN=QV;cFbnb7;T&7X-qIrqsl*m$}d$CKcW835(Ow@m?{E zuz;N49J94VK$ + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/api/todolist.html b/docs/api/todolist.html new file mode 100644 index 00000000..0ac099bc --- /dev/null +++ b/docs/api/todolist.html @@ -0,0 +1,21 @@ + + + + + + Todo List + + + + +

Todo List

+

davical

+

local_session_sql()

+
    +
  • Make this a defined constant
  • +
+

+ Documentation generated on Thu, 18 Sep 2008 00:10:47 +1200 by phpDocumentor 1.3.2 +

+ + \ No newline at end of file