Commit Graph

68 Commits

Author SHA1 Message Date
Ralf Becker
682fd42a26 move CalDAV/CardDAV server to api 2016-04-02 10:44:17 +00:00
Ralf Becker
9eb1ecbd36 fix all IDE warnings, before moving classes to api, in case we want to merge it back to 14.x 2016-04-02 08:40:34 +00:00
Ralf Becker
3b4708f9ea using new Horde code in vendor for CalDAV/CardDAV, moved all old Horde and SyncML code to syncml app, not sure it is still functional 2015-06-22 15:36:23 +00:00
Ralf Becker
1d1dbd252c fixed missing sorting in inital sync-collection report with empty sync-token 2014-02-20 19:26:02 +00:00
Ralf Becker
a9b6c6e9b4 * CalDAV/CardDAV: fixed support for limited sync-collection report used eg. by Marten Gajdas Android apps 2014-02-20 17:46:15 +00:00
Ralf Becker
94af139465 * CalDAV/CardDAV: entries with urls containing url-encoded chars, eg. from Google calendar, were not send to clients (missing urldecoding in multiget report) 2014-02-20 15:11:27 +00:00
Ralf Becker
6fd7ed4b2d * CalDAV/CardDAV: only advertice sync-collection report, if we track deleted entries (history-logging enabled, not working otherwise) 2014-01-07 11:10:51 +00:00
Ralf Becker
f3cb31ccf5 * CalDAV/InfoLog: fixed not working sync-collection report, eg. used by eM client 2013-12-12 01:54:16 +00:00
Ralf Becker
18285429e9 * CalDAV/CardDAV: fixed not working propfind-request to single resource in calendar/addressbook collection 2013-10-01 11:38:34 +00:00
Ralf Becker
a79192cc63 fixed not found multiget-report urls where not reported (worked for calendar only before sync-report was introduced) 2013-09-25 10:27:41 +00:00
Ralf Becker
1752f7defd basic managed attachment support, tested with iCal from OS X mountain lion 2013-09-23 10:21:31 +00:00
Ralf Becker
051c724e37 * InfoLog/CalDAV: fixed initial sync of more then 60 contacts created doublicates (no REPORT filters were used) 2013-04-04 15:12:33 +00:00
Ralf Becker
52675388a3 * CalDAV/CardDAV: sync-collection report for all apps allowing a more efficient sync 2012-09-26 14:30:47 +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
3918f2606c * InfoLog/CalDAV: preference allowing to modify responsible user from devices not supporting them by setting EMail address as category 2012-07-20 13:06:47 +00:00
Ralf Becker
b025809df1 * CalDAV/CardDAV expand-property report for principals used in iCal on OS X 10.7 2012-06-27 20:08:56 +00:00
Ralf Becker
76d566d137 * InfoLog/CalDAV: fixed not working toggeling of completed from iOS reminder app (only sets COMPLETED, but never STATUS or PERCENT-COMPLETED)
not returning etag for modified entries, as client then keeps not updated X-INFOLOG-STATUS, sending no etag we force him to update from server
2012-03-22 12:15:18 +00:00
Ralf Becker
1b345bbf36 * InfoLog/CalDAV: fixed wrong timezone used for iCal generation
times where read in server-time, but infolog_ical was told it is user-time, now set to server-time in infolog_groupdav::get_handler()
2012-03-08 16:23:43 +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
2939d7bbf3 propagate data from settings hook to handlers, to fix failed installs because setup was not detected 2012-02-14 17:38:45 +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
c5ca42a4b1 move app-specific settings to app-handler 2012-02-04 01:24:34 +00:00
Ralf Becker
ca28153b25 need to load custom fields now allways, as x-props and unsupported components are stored there 2012-01-31 18:00:57 +00:00
Ralf Becker
1f93855172 fill displayname for contacts and task to easier identify it in autoindex 2012-01-31 00:37:01 +00:00
Ralf Becker
fb16ff842d InfoLog/CalDAV: store unsupported iCal properties like custom fields incl. history logging, thought they are not displayed unless you explicitly add a custom field from them (prefixed with one #) 2012-01-29 22:34:43 +00:00
Ralf Becker
d401bcc3ad * InfoLog/CalDAV: allow updates with implicite rights of responsible user, InfoLog type is kept on update, deduct not set status of client from completed(-percent) 2012-01-26 01:49:56 +00:00
Ralf Becker
d898e6c627 calendar-timezone needs full vcalendar component, not just a vtimezone 2011-10-20 14:01:16 +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
b2fa12eb3e remove unusual and unnecessary "EGw-...-wGE" prefix/postfix from etag and ctag 2011-10-08 11:34:55 +00:00
Ralf Becker
e9f4f4f3b3 if client set an own filter, reset the open-standard filter 2011-10-07 09:05:11 +00:00
Ralf Becker
8f0abbe004 implemented rfc4791#section-9.9 complient time-range filter 2011-10-06 10:29:01 +00:00
Ralf Becker
e05ce4d614 enclosing etag in quotes, as most servers do 2011-10-05 08:15:24 +00:00
Ralf Becker
23584253fd not returning deleted entries for read, as they might have identical UID for caldav_name as a non-deleted entry and would therefore block access to these 2011-10-04 14:18:35 +00:00
Ralf Becker
0de2f3c527 fixed profind depth 0 directly on a resource contains name-part twice 2011-10-04 12:16:03 +00:00
Ralf Becker
288a88239b we should not return an etag here, as we never store the PUT ical byte-by-byte 2011-10-03 15:48:24 +00:00
Ralf Becker
175197d7c0 * CalDAV: no METHOD:PUBLISH for CalDAV outside the inbox 2011-10-03 12:53:28 +00:00
Ralf Becker
b11fa0302f * CalDAV/GroupDAV: return empty collection, as iCal under iOS 5 had problems with returning "404 Not found" status 2011-09-30 12:52:40 +00:00
Ralf Becker
bb4b9819b0 * CalDAV/GroupDAV/InfoLog: making synced InfoLog types configurable and moved getctag method to infolog_bo in preparation of InfoLog eSync support 2011-09-28 12:35:53 +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
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
fd56c47151 * InfoLog/CalDAV: allowing clients to specify URL (name-part), as required by CalDAV spec 2011-04-11 09:29:39 +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
6edb314931 * correctly parsing of "time-range" REPORT filter, giving a SQL error before because it requires comparing as unix timestamp not strings 2011-02-23 10:59:12 +00:00
Ralf Becker
3dccac6ce4 * InfoLog/*DAV: do NOT set current user for PUT in /infolog/ and do not allow to change owner of existing entries 2010-10-26 09:21:52 +00:00
Ralf Becker
ed733eef42 * iPhone and Mac Addressbook support aka Apple CalDAV/CardDAV autodetection
Addressbook does NOT allow to specify the URL, unlike iCal which allows it after autodetection fails.
This, some XML specifics set now for Apple addressbook user-agents and etags for addressbook collection itself
allow now to use EGroupware with iPhone or Mac addressbook. The later was working before, if you edited the URL
into a decompiled plist file, but failed now because of a new REPORT it tries on the principal, to find out shared
addessbooks, which we not yet support, but failed to tell in the correct way (501 Not Implemented).
Addressbook sync now the personal addressbook, because that is what we tell it as addressbook-home-set.
We should add some configuration so user can choose what addressbook to set as addressbook-home-set, or to set
the "all" addressbook (/addressbook). For the later we could add some prefs like SyncML to specify filters or
eg. a distribution list.
2010-09-25 09:08:37 +00:00
Jörg Lehrke
901f5873bc Fix GroupDAV ctag issues 2010-09-18 11:28:12 +00:00
Jörg Lehrke
75b25bb796 Fix FroupDAV report issue 2010-07-02 05:01:15 +00:00
Jörg Lehrke
09bc2c09cd Fix CTag issues for GroupDAV 2010-06-29 13:52:56 +00:00
Jörg Lehrke
d1fa11aaab CalDAV Infolg support for Evolution (Stylite #602) 2010-06-09 19:44:58 +00:00
Jörg Lehrke
30a3296c8e Optimze and clean up GroupDAV 2010-04-13 15:31:59 +00:00