Commit Graph

60 Commits

Author SHA1 Message Date
Ralf Becker
ba863d8e6f * CalDAV/Resources: fixed only first N resources were available in CalDAV (N = common preference how many entries to show) 2014-01-28 14:45:21 +00:00
Ralf Becker
58b56fd630 * CalDAV/calendar: fixed permanent auth request in iCal, if accountselection is set to "selectbox with groupmembers" and rights granted from group without being a member
expand-property report now ignores the url instead of throwing an exception
2014-01-07 17:33:01 +00:00
Ralf Becker
378074f989 ignore "broken" grants (eg. negative account_id for a user), as they lead to further errors (no members) 2013-02-25 09:49:43 +00:00
Ralf Becker
0cf69a296b added missing, but not used, parameter 2013-01-21 08:14:45 +00:00
Ralf Becker
d7eedc5b5c * CalDAV/CardDAV: return urn:uuid as last record in calendar-user-address-set, as according to iCal4OL developer, some clients might have problems with it, also adding both full uri and just path of principal url, as calendarserver does it 2012-10-24 07:18:07 +00:00
Ralf Becker
1517756585 * CalDAV: fixed parsing of principal urls used by iOS6 for users 2012-10-22 16:44:30 +00:00
Ralf Becker
a97dd01349 fixed invalid xml in CardDAV:principal-address property of pricipal collection 2012-10-02 05:20:45 +00:00
Ralf Becker
f6541b66a7 slightly different expand-property report requested from OS X 10.6.8 iCal requests properties from DAV namespace not explicitly specified 2012-07-17 15:18:09 +00:00
Ralf Becker
48f36b99f5 fix returned xml for correct expansion is empty 2012-07-15 09:55:25 +00:00
Ralf Becker
2787fd56d0 * CalDAV: expand-property reports queried by iCal from OS X 10.7.4
- expanded-group-member-set
- expanded-group-membership
- calendar-proxy-read-for
- calendar-proxy-write-for
Both calendar-proxy reports can be combined in one request, which is now also handled correct.
2012-07-15 09:17:12 +00:00
Ralf Becker
d1247d6c5f * CalDAV: fixed PHP Fatal Error when iCal contains invalid participant url like Lighttnings "invalid:noemail" 2012-04-19 12:52:00 +00:00
Ralf Becker
e136ebc108 * CalDAV/CardDAV: log failed requests with ### like exceptions to ease diagnose problems, log if clients requests accounts not visible because of account-selection preference, skip proxys if not visible 2012-04-12 10:44:55 +00:00
Ralf Becker
2bc821f428 use groupdav->log() for all permanent error-messages, to log the into request-log too, if both If-Match and If-Schdule-Tag-Match given use If-Match for organiser/owner and If-Schedule-Tag-Match for attendees/participants 2012-02-21 20:04:45 +00:00
Ralf Becker
01ce3bd88d * CalDAV/CardDAV: /addressbook-accounts/ and PROPPATCH for addressbooks/calendars for every namespace but CalDAV, CardDAV or Calendarserver (displayname or *-describtion are ok) 2012-01-30 05:11:05 +00:00
Ralf Becker
a679a49196 * CalDAV/CardDAV: show addressbooks/calendars selected to sync in prefs under users addressbook-/calendar-home-set (incl. account addressbook, if enabled) 2012-01-25 03:25:42 +00:00
Ralf Becker
c7dc8748b7 disabling Lightning hack for fixed version 1.1.1, where bug is fixed and added verbose error_log, if Lightning hack is enabled 2012-01-10 00:20:00 +00:00
Ralf Becker
89fdaa7691 disabled NOT working addressbook-findshared report, which is only used in 10.6, but currently creates and error with 10.6 addressbook 2011-11-14 11:54:59 +00:00
Ralf Becker
f993bf1051 no need to add group-members as additional proxys, ACL grants to groups are understood by WebDAV ACL (tested with iCal) 2011-11-02 14:03:36 +00:00
Ralf Becker
69288160ae fixed not working proxy display in iCal, if resource-name contains a german umlaut: names get now transliterated to ascii (they are unique anyway, as prefixed by resource-id) 2011-11-02 13:41:41 +00:00
Ralf Becker
5202d0db2d do NOT query proxys for app user has no rights too, can give SQL error, if app is not even installed, eg. resources 2011-10-25 08:08:01 +00:00
Ralf Becker
e0690d2342 type attribute for principal-property-search report limiting search on a certain type/tree 2011-10-20 20:00:13 +00:00
Ralf Becker
512138ed56 diverse fixes for resources&locations, thought iCal only autocompletes locations, no idea why it skips resources, thought resources booked via webgui are shown correct 2011-10-17 15:36:28 +00:00
Ralf Becker
586a07924a implementation of (announced, but previously not implemented) acl-principal-prop-set report 2011-10-17 06:44:09 +00:00
Ralf Becker
a949acf031 locations and resources principal tree, should allow (untested!) to add resources via iCal autocomplate and "subscribe" to resource calendars 2011-10-16 08:53:07 +00:00
Ralf Becker
b2fa12eb3e remove unusual and unnecessary "EGw-...-wGE" prefix/postfix from etag and ctag 2011-10-08 11:34:55 +00:00
Ralf Becker
b2ea1a7d05 new method groupdav_principals::url2uid to convert a principal url to a calendar uid, fixes emclient uses urn:uuid urls in outbox posts to get freebusy 2011-10-07 06:02:30 +00:00
Ralf Becker
c670740a71 fixed encoding issue with group-name containing a space, causing eg. OS X iCal to not display proxys 2011-10-04 07:27:33 +00:00
Ralf Becker
60ba2b9628 fixed admins not having access to all accounts, if account_selection was none or groupmembers, from which admins are explicitly excepted 2011-10-03 13:40:41 +00:00
Ralf Becker
0837c263ff CalDAV principals: fixed wrong namespace causing iOS5 iCal to NOT autocomplete participants 2011-10-03 09:59:50 +00:00
Ralf Becker
aac290a330 fixed typo: record-type is "users" not "user" 2011-09-26 17:08:36 +00:00
Ralf Becker
14dde4c1ff iOS iCal sends now pricipal-property-search reports to autocomplete participants, but not (yet) displays the result, for whatever reason ... 2011-09-25 12:00:20 +00:00
Ralf Becker
b4b04844fe added two more match-type values from CardDAV:text-match 2011-09-24 21:15:44 +00:00
Ralf Becker
0a7b7e40c8 - improved principal-property-search report to support test=(allof|anyof) and match-type=(contains|starts-with) attributes used by iOS iCal to autocomplete participants
--> participants are - thanks to CalDAV scheduling - now setable for new event, thought searching for them does NOT yet work, no idea why ;-)
- added somehow missing calendar-query report to supported-report-set
2011-09-24 21:10:53 +00:00
Ralf Becker
3f830b2bff - implemented principal-property-search report required for WebDAV ACL and used by Lightning to search for calendar-home-set
- had to implement a workaround for Lightning, as it wrongly interprets principal-property-search for calendar-home-set in the principal-collection-set
  matching our *DAV root returning all principals, as all have a matching calendar-home-set, as NOT supporting CalDAV scheduling
  --> search only current user's principal, when Lightning searches for calendar-home-set
- OPTIONS / return now calendar-auto-scheduling too, as Lightning only searches there, to check if server supports CalDAV scheduling
- fixed outbox freebusy request to cope with no X-CALENDARSERVER-MASK-UID and a single attendee
2011-09-23 12:04:21 +00:00
Ralf Becker
c26fcffda7 first step for CalDAV scheduling
- principal reports scheduling-inbox-URL /<username>/inbox/ and scheduling-outbox-URL /<username>/outbox/
- outbox collection contains no events
- outbox correctly answers POST for freebusy information
- outbox respons to all other POST with "204 No Content", ignore client request to deliver invitations
- inbox collection contains events of unknown status (PARTSTAT=NEEDS-ACTION)
- inbox responds to DELETE with "200 Ok"
--> iCal under OS X now shows freebusy times :-)
(had to add "write-content" privilege for calendar collections user has edit rights for, to allow adding events)
2011-09-22 15:22:52 +00:00
Ralf Becker
1f39e5c562 - added WebDAV ACL props supported-privilege-set and current-user-privilege-set
+ currently only standard WebDAV privileges: read, read-current-user-privilege-set, write-content, bind and unbind used
  + they get only queried for collections, thought we dont report any write* on collections, as we dont allow to create calendars or change properties
- new groupdav::add_resource() method used to add all resources (incl. collections) to propfind or report requests
- improved autoindex to show nicely indented hierarchical properties
2011-09-21 20:08:21 +00:00
Ralf Becker
d5f9c5b93c - show user collections /<username>/(addressbook|calendar|infolog)/ in propfind
- only define addressbook-home-set and calendar-home-set for principal-collections
- advertice /addressbook/ as addressbook-gateway (searchable collection for all contacts accessible to a user)
2011-09-20 19:16:24 +00:00
Ralf Becker
8b74af09c5 correctly handle (forced) user preference account-selection "none" or "groupmembers": do not show other groups or users 2011-09-19 14:15:33 +00:00
Ralf Becker
03ed1d3ddb - refactored code to use a single add_collection method in groupdav class
--> app groupdav classes now get calling groupdav object as parameter
Had a quick test with iOS & OS X addressbook, calendar and with Lightning
2011-09-18 10:56:56 +00:00
Ralf Becker
b49aae4675 - using now associative properties for easier extending, which get converted at end of add_collection to HTTP_WebDAV_Server properties
- added addressbook-findshared report to principals
2011-09-17 12:31:47 +00:00
Ralf Becker
6ce0906838 * CalDAV: implemented calendar proxy support and cleaned up principals tree 2011-09-15 22:45:00 +00:00
Ralf Becker
87ee0f0088 * CardDAV: store name part of URL from client PUT request, to fully comply with CardDAV spec 2011-04-05 20:39:13 +00:00
Ralf Becker
3bb9e89bcf * CalDAV/Lightning: fixed under some conditions infinit poping up alarms and user not able to add alarms
- Lightning pops up alarm, until Sequence/etag get updated: if user has no edit rights on an other users calendar, etag never got updated, now we update it
- fixed user was not able to add alarms via CalDAV, if he had no edit rights for event (was always possible in web UI)
- alarms from other users calendars are not included any more, as they make no sense but a lot of trouble
- fixed wrong condition on adding alarms, causing some alarms no being saved
2011-03-05 10:21:32 +00:00
Ralf Becker
20a409ca52 * iCal on iPhone detects URL now correct
reverted calendar-home-set to report only users calendar, as reporting multiple break propfind
2010-10-20 18:59:27 +00:00
Ralf Becker
4e65bde081 urlencode and decode account_lid in url to cope with group-names with space in it, which stall iPhone OS 4.2 devices 2010-10-20 14:37:48 +00:00
Ralf Becker
20fb58dd6a loop over existing addressbooks, to make sure each ab is only once in addressbook-home-set, even when selected multiple times in the prefs because of symbolic ab like "primary group" 2010-10-20 13:23:19 +00:00
Ralf Becker
261b4521c8 as the pricipal of current user is influenced by GroupDAV prefs, we have to include them in the etag 2010-10-20 12:07:10 +00:00
Ralf Becker
2575da2575 * GroupDAV preference for addressbook-home-set (requires to register hooks) 2010-10-19 23:30:16 +00:00
Jörg Lehrke
80a9456eee cleanup forgotten test code in GroupDAV 2010-10-17 23:12:19 +00:00
Jörg Lehrke
33bd0fed50 Announce all available addressbooks and calendars of the current user with GroupDAV 2010-10-09 22:49:10 +00:00