Commit Graph

99 Commits

Author SHA1 Message Date
Ralf Becker
1b98e9e858 requests in log were always trunkated (since last changes) and fixed quoting in autoindex for hierarchical props in collection resources 2012-10-08 11:20:29 +00:00
Ralf Becker
bef455f5e3 make logging available for iSchedule 2012-10-04 11:59:04 +00:00
Ralf Becker
db4bdb7f74 * CalDAV/Calendar/Resources: calendars of resources can now be accessed or subscribed via CalDAV, to subscribe use CalDAV preferences 2012-09-27 15:46:08 +00:00
Ralf Becker
078fa987d4 allow storing and retrieval of following CalDAV properties: default-alarm-vevent-date, default-alarm-vevent-datetime 2012-09-26 10:01:02 +00:00
Ralf Becker
f224fe5852 sync-collection report for InfoLog, thought reminder app on OS X 10.8.2 does not use it, moved logic for sync-token to baseclass and determine availablity on supported-report-set 2012-09-24 10:26:29 +00:00
Ralf Becker
a6f541edba * CardDAV: rfc 6578 sync-collection report (more efficient way to sync contacts) 2012-09-23 20:19:35 +00:00
Ralf Becker
c23f7fc95b * WebDAV/GroupDAV/CalDAV/CardDAV: removed option only used for old KDE GroupDAV resource and unknown WebDAV clients producing invalid XML, fix for community bug #3152 2012-08-13 09:32:03 +00:00
Ralf Becker
15c9fd0d32 * 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:00 +00:00
Ralf Becker
5e66d1a2ce docu update: added accounts-addressbooks accessible via CardDAV 2012-04-11 20:33:24 +00:00
Ralf Becker
629b9bb393 * CalDAV/CardDAV: fixed typo preventing sync, if logging to Apache error-log was switched on 2012-03-28 07:03:40 +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
baf8999392 log request in case of exceptions too by installing a custom exeception handler 2012-02-20 09:06:24 +00:00
Ralf Becker
dea5bfef24 add empty line in log between request body and response 2012-02-18 10:49:24 +00:00
Ralf Becker
164b0c73b7 logging whole requests, to be able to lock the log-file, as some clients (eg. SOGO) use multiple threads to request resources, which messes up the log otherwise 2012-02-17 09:14:33 +00:00
Ralf Becker
7a6959ca3f many bugfixes around distribution-lists/groups and some code restructuring 2012-02-09 20:09:49 +00:00
Ralf Becker
aef04880e9 * CalDAV: allow to create private events on OS X iCal, fixing DAV header for new shared folders 2012-02-07 20:19:16 +00:00
Ralf Becker
5b81fca2f1 Hide Size in autoindex and move Displayname to first column after name 2012-02-07 12:47:49 +00:00
Ralf Becker
d89f48d9c1 implement RFC 5995 add member to collection via POST, but not yet set DAV:add-member due to problems with OS X clients 2012-02-04 20:24:01 +00:00
Ralf Becker
d21be8d871 move logic of which addressbook/calendars are shared into app-handler 2012-02-04 01:03:56 +00:00
Ralf Becker
6161826de1 add http://calendarserver.org/ns/:shared to shared addressbooks/calendars for Apple clients to mark collections to user as shared 2012-02-03 18:21:20 +00:00
Ralf Becker
fb6f5cf4be allow PROPPATCH on *-home-set, to allow eg. jqcalendar to store its prefs there 2012-02-01 23:26:16 +00:00
Ralf Becker
3ae6e76ff9 fixed wrong self-url in PROPFIND of shared addressbooks/calendars 2012-01-31 22:27:31 +00:00
Ralf Becker
f2acf7707f outbox supports VFREEBUSY too, it is required from OS X iCal to autocomplete locations 2012-01-30 23:53:06 +00:00
Ralf Becker
a5673d388e /addressbook/ was not anounced as directory gateway 2012-01-30 18:53:47 +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
ace8f33784 implement CalDAV <calendar-data><expand start="..." end="..."/></calendar-data> to return already expanded recurrences in a given time-range, instead of just a recurring event with a recurrence rule 2012-01-24 05:27:26 +00:00
Ralf Becker
c79657705b * CardDAV: Hack for iOS 5.0.1 addressbook to stop asking directory gateway permissions with depth=1, which might fail on installs with huge addressbooks 2012-01-21 01:45:48 +00:00
Ralf Becker
f7ebd11af3 log REQUEST_URI not PATH_INFO, to log the correct request 2012-01-20 07:21:28 +00:00
Ralf Becker
21989aa249 log full requests to files directory "$files/groupdav/$user-$agent.log" 2011-11-24 12:20:13 +00:00
Ralf Becker
2effc93ea4 * CalDAV/CardDAV/GroupDAV new user preference to log requests and responses to Apache error-log 2011-11-23 16:34:39 +00:00
Ralf Becker
b0a22dae6a removed calendar-preference "color for Apple iCal", as it set a single color for all calendars you have access too, storing and returning color set by iCal (untested) 2011-11-09 13:23:53 +00:00
Ralf Becker
ade24e4943 added OS X 10.7.2 iCal 5.0.1 user agent 2011-11-08 21:03:49 +00:00
Ralf Becker
ceaec3d3c1 added calendar-timezone property, changed groupdav_handler::extra_properties signature (removed static and added $user parameter), removed calendar-user-address-set property belonging only to principal 2011-10-20 13:35:01 +00:00
Ralf Becker
6d9491cf55 not announcing DAV level 2, as we dont support locking 2011-10-16 08:49:20 +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
e654d3fbfb correctly handle uid/name-part of path containing #%? 2011-10-06 07:51:24 +00:00
Ralf Becker
e05ce4d614 enclosing etag in quotes, as most servers do 2011-10-05 08:15:24 +00:00
Ralf Becker
b227e61236 removed certain properties defined only on the principal 2011-10-04 11:37:44 +00:00
Ralf Becker
4eaf9609c1 fixed docu-typo 2011-09-28 15:41:42 +00:00
Ralf Becker
7443fdc639 * GroupDAV/KDE assume KDE 4.7+ uses native Akonadi resource, while below pre-Akonadi GroupDAV resource is used: unfortunately both have contradicting requirements 2011-09-26 10:20:27 +00:00
Ralf Becker
b791b23f08 fixed typo causing to not announce addressbook outside of addressbook folder 2011-09-26 06:39:13 +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
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
b5269738d7 read-free-busy, schedule-send and schedule-deliver privileges 2011-09-22 18:46:16 +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
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