Commit Graph

37 Commits

Author SHA1 Message Date
Jörg Lehrke
0ee6b985bc Fix Apple CardDAV issue 2010-10-29 08:47:06 +00:00
Ralf Becker
567e952fba * CardDAV pref which addressbooks to sync and many fixes for iPhone OS 4.0, 4.1, 4.2beta and Mac iCal and contact app
Merge of following commits from Trunk:
r32609: * GroupDAV preference for addressbook-home-set (requires to register hooks)
r32610: missing groupdav hooks
r32611: fixed missing "users" of principal url in calendar-user-address-set
r32615: as the pricipal of current user is influenced by GroupDAV prefs, we have to include them in the etag
r32619: 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"
r32620: urlencode and decode account_lid in url to cope with group-names with space in it, which stall iPhone OS 4.2 devices
r32621: fixed bug: GroupDAV/CardDAV PUT request to /addressbook/ changes owner, also checking now required ACL for moving contacts between addressbooks
r32622: returning "403 Forbidden" if addressbook_bo->save() fails, happens when writing new entries in ABs without ADD rights
r32623: * iCal on iPhone detects URL now correct
reverted calendar-home-set to report only users calendar, as reporting multiple break propfind
r32624: we need a real redirect, not just a proxy
r32631: fixed working in GroupDAV prefs and translation
2010-10-21 11:17:46 +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
Jörg Lehrke
3f2fee8975 Announce all available addressbooks and calendars of the current user with GroupDAV 2010-10-09 22:36:04 +00:00
Jörg Lehrke
40d786871e Improve Mac OS Addressbook.App CardDAV support as far as reasonable 2010-09-25 15:19:48 +00:00
Jörg Lehrke
5cebf991b1 Improve Mac OS Addressbook.App CardDAV support as far as reasonable 2010-09-25 14:56:48 +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
37fed34972 Allow moving of existing cantacts between adressbooks 2010-07-23 18:06:18 +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
bce68a9e82 Fix CalDAV group attendee issue; various GroupDAV improvements 2010-06-27 22:16:22 +00:00
Jörg Lehrke
1431f149e2 Fix GroupDAV/Addressbook categories issue 2010-06-14 07:45:25 +00:00
Jörg Lehrke
30a3296c8e Optimze and clean up GroupDAV 2010-04-13 15:31:59 +00:00
Jörg Lehrke
7220d96847 Use iterator approach in GroupDAV; fix various issues 2010-03-15 09:55:16 +00:00
Jörg Lehrke
a8804a44ef GroupDAV updates 2010-03-06 23:06:43 +00:00
Ralf Becker
8d55e4800e fixed supported-report-set according to a calendarserver example and reorganized HTTP_WebDAV_Server to generally support hierachical properties 2010-01-07 04:24:45 +00:00
Ralf Becker
b446f6de4e supported-report-set as required for CardDAV and Sogo connector 2010-01-07 02:04:09 +00:00
Ralf Becker
2e99a3fb20 ctag for addressbook, sogo connector seem to require it, thought it should be optional, anyway ctag makes sense 2010-01-05 23:27:28 +00:00
Ralf Becker
d53f0c91bf ctag for addressbook, sogo connector seem to require it, thought it should be optional, anyway ctag makes sense 2010-01-05 23:25:17 +00:00
Ralf Becker
447c8b618a Using an iterator to query addressbook in chunks of 100 contacts to
allow to do propfinds on hugh addressbooks independent of memory_limit:
- regular groupdav_handler::profind() method gets split in a method just
  computing a filter and a callback to run that filter on the backend
- groupdav_propfind_iterator class is returned from profind method
  instead of an array with information about the files
- iterator calls groupdav_hander::propfind_callback if there are no more
  entries from the previous call
- constructor of groupdav_propfind_iterator allows to pass an extra array
  with files to return, to simplify modifying existing implementation
  (were eg. information about the current path, get's supplied from
  calling groupdav class).
2009-10-17 09:13:36 +00:00
Ralf Becker
4f69a5d1b0 using references to loop of items in profind and some cleanups 2009-10-16 08:36:28 +00:00
Ralf Becker
ae3ecf9891 "- using a referencing foreach to loop over contacts in propfind to minimize memory usage
- some other cleanups"
2009-10-16 08:01:28 +00:00
Ralf Becker
444018cdaf "fix for using GroupDAV with LDAP as addressbook backend" 2009-08-07 07:16:14 +00:00
Ralf Becker
1ba343a837 "fix for using GroupDAV with LDAP as addressbook backend" 2009-08-07 07:15:37 +00:00
Ralf Becker
d333605510 - merged SyncML-1.2 branch with trunk:
svn merge ^/trunk/addressbook@27378 ^/branches/SyncML-1.2/addressbook .
- re-added to trunk commits, which were somehow not in SyncML-1.2 branch:
svn merge -c 26581 ^/trunk/addressbook
svn merge -c 26582 ^/trunk/addressbook
2009-07-15 19:44:09 +00:00
Ralf Becker
232252475f patch fixing many depricated functions (eg. posix regular expressions) and features, which fill up the error_log under php5.3 (and will no longer be available under php6).
Patch is mostly created by script in egroupware/doc/fix_depricated.php in separate commit.
I do NOT advice to apply this patch to a production system (it's commited to trunk!), as the automatic modified regular expressions have a good change to break something ...
2009-06-08 16:21:14 +00:00
Klaus Leithoff
e1e09203ed njv: addressbook/groupdav work to improve groupdav compatibility 2009-04-02 12:31:44 +00:00
Ralf Becker
43f860ba8f Reworked GroupDAV and iCal/vCard handler to set 'GroupDAV' as product
manufacturer and the recogniced GroupDAV client as product name.
This way we are able to handle different GroupDAV clients, as we
allready do with different SyncML clients.
Also removed the no longer needed code enabling the use of the real UID, 
as SyncML does no longer misuse the UID for it's GUID.
2008-11-03 09:36:20 +00:00
Ralf Becker
01a3800b27 "removed all special handling for SOGo connector, as it is no longer required from version 0.9pre14 on.
Thanks to Ludovic Marcotte from Inverse."
2008-10-16 19:51:29 +00:00
Ralf Becker
c618dad433 no extra charset attributes in iCal for GroupDAV/CalDAV 2008-06-07 18:00:29 +00:00
Ralf Becker
1ac7a8535b "fixed 2 problems:
- new entry were not handled correct after the last commits (201 Created and Loaction header)
- cadaver reports entires as not found, because modified and contentlength were not set"
2008-05-20 09:02:16 +00:00
Ralf Becker
9f30e824b0 enforce a certain strength of uid, as some clients set quite weak ones) 2008-05-20 04:59:26 +00:00
Ralf Becker
ee7b0643bd "dont send accounts via GroupDAV/CardDAV, if user choose in his prefs to hide the accounts" 2008-05-19 08:01:28 +00:00
Ralf Becker
499ac36bff "- fixed charset for Thunderbird/SOGo connector
- using uid as filename to improve the support of newer SOGo connectors (>= 0.62), which require the server to remember the path they used to store a new contact
--> still not working reliable and causes TB to lock up
--> recommended is still version 0.62 of the SOGo connector "
2008-05-17 13:11:46 +00:00
Ralf Becker
7a2e1a66e2 renamed addressbook classes to use autoloading, was just a test to get
an idea about the effort - not sure I want to do that with all apps ;-)
2008-05-10 12:02:49 +00:00
Ralf Becker
d2e9143213 First version of new CalDav/CardDAV/GroupDAV access for calendar and
addressbook (infolog will follow).
CalDAV is tested so far with lightning 0.8 and Apple's iCal. Please note
that both distinguish between iCalServer and CalDAV!
The URL is currently http://domain.com/egroupware/groupdav.php/calendar/
2008-05-08 20:31:32 +00:00