Jörg Lehrke
3bce17e854
Fix vCard field mapping during import (cummunity bug #3208 )
2013-02-19 19:53:20 +00:00
Ralf Becker
4f16b71ea5
* CardDAV/Addressbook: do NOT allow to delete accounts via CardDAV, was never intended, but as it is allowed in addressbook, it was possible via CardDAV
2013-01-22 13:19:07 +00:00
Ralf Becker
0f76ff5ab5
* CardDAV: fixed wrong privileges for accounts addressbook, causing clients to report it read-only even for admins
2013-01-22 08:37:58 +00:00
Ralf Becker
4e2a7dab80
* CardDAV/Addressbook: fixed not working delete of contacts
2012-10-01 17:23:44 +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
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
e69918f583
* 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-09-24 07:07:57 +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
082372881d
* CardDAV: disable category and class (public/private) for iOS, because they are not displayed and get messed up
2012-07-31 16:18:26 +00:00
Ralf Becker
1141eb1ee0
* Addressbook/CardDAV: fixed lost cell-phone numbers, caused by SyncML update
2012-07-31 14:58:13 +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
Jörg Lehrke
358252b4a1
* Fix Funambol vCard issues (community bug #1999 )
2012-06-17 12:28:16 +00:00
Ralf Becker
7bc098d7c3
* CardDAV/GroupDAV/Addressbook: works now with LDAP backend (account only or all contacts), fixed not working update of accounts (SQL and LDAP), changed ctag generation to work with LDAP too
2012-02-29 09:58:15 +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
7badca95da
* CardDAV/Addressbook: storing Apple AB type company (X-ABShowAs:COMPANY) as EGroupware fileAs company
2012-02-21 08:57:55 +00:00
Ralf Becker
b0d47bd7d5
fixed missing owner
2012-02-20 11:25:41 +00:00
Ralf Becker
873db447bc
fixed not working PUT of groups/lists
2012-02-18 10:22:59 +00:00
Ralf Becker
d33929a332
* Addressbook/CardDAV: fixed sync all in one addressbook changed AB to personal, use default addressbook for new contacts if synced, otherwise use always synced personal AB
2012-02-15 13:04:27 +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
7d2572dca5
added user-agent detection for Snow Leopard (OS X 10.6) addressbook, to stop it from messing up categories and photo, Lion (10.7) addressbook works find
2012-02-14 15:14:41 +00:00
Ralf Becker
1f76e0c191
fixed several small issues around CardDAV and history logging in addressbook (dont log not set custom fields as there are not stored and therefore not changed)
2012-02-10 21:29:50 +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
d7fca17d6e
resurrect preference to sync all ABs into one (allways implied for OS X) and new pref to "Distributionlists as groups", plus explenation of the prefs
2012-02-04 21:47:28 +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
d21be8d871
move logic of which addressbook/calendars are shared into app-handler
2012-02-04 01:03:56 +00:00
Ralf Becker
902d569026
* Addressbook/CardDAV: fixed Apple iOS and OS X addressbook messed up phone numbers (Mobile is now mobile for both and iPhone is matched to EGroupware private cell)
...
also removed copy of supportedFields and using again default ones from addressbook_vcal, with Apple specific fixes in _get_handler()
2012-02-01 19:52:19 +00:00
Ralf Becker
625a125e83
fixed not working update of members
2012-02-01 00:59:25 +00:00
Ralf Becker
f5cb740795
limit groupVCard to contacts of same addressbook, as OS X and iOS only allows that and PUTs would remove contacts from other ABs, also fixed not working multiget report of lists/groups
2012-02-01 00:31:24 +00:00
Ralf Becker
6f1c2eacac
extend ctag to lists
2012-01-31 20:06:27 +00:00
Ralf Becker
5c020ac87d
fixed many issues with distribution lists as vCard groups, also adding/removing contacts from a list in web-GUI is working again
2012-01-31 19:47:52 +00:00
Ralf Becker
41eaebde79
first try to export distribution lists via CardDAV as vCard with "X-CALENDARSERVER-KIND:group", we might need a user-agent whitelist, as not all clients will understand that
2012-01-31 09:57:59 +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
3db7b2f5c2
setting CardDAV:max-image-size on addressbook collections, so iOS scales it down before sending
2012-01-30 19:47:34 +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
7f14a2a196
* CardDAV: fixed sometimes not working creation of new contacts from the device, if accounts are stored in LDAP
...
not sure why I used $this->bo->account_repository != "ldap", it makes no sense, as we specify the column explicitly, no idea if CardDAV works for an addressbook in LDAP, but now it works for accounts in LDAP too
2012-01-20 06:44:40 +00:00
Ralf Becker
d9a824efa2
skip "unknown xml" warning in addressbook-multiget report
2011-11-10 06:57:54 +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
e05ce4d614
enclosing etag in quotes, as most servers do
2011-10-05 08:15:24 +00:00
Ralf Becker
3f564ac5aa
enhanced addressbook-query report filter to parse filter given by Mac OS Addressbook directory gateway query
2011-10-05 06:50:26 +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
b44e108cea
* CardDAV/GroupDAV/Addressbook: do NOT check for api version, as it caused accounts created during setup to have no carddav_name and therefore fail in CardDAV/GroupDAV (shown as "/addressbook/" in collection list!)
2011-09-28 09:47:47 +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
40dd19fd3e
* CardDAV/GroupDAV: handle deleted contacts, as not existing (404 Not Found)
2011-06-19 09:01:15 +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
01d1b16b6e
* GroupDAV/CardDAV: fixed empty addressbooks issue (url in PROPFIND contained empty id --> "/.vcf" instead "/123.vcf")
...
caused by not longer necessary special handling of contact_id in addressbook_sql, which is handled now in so_sql(_cf)
fix for PostgreSQL to NOT get SQL error ORDER BY must be in column list for GroupDAV/CardDAV propfinds
2011-03-23 09:37:19 +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
44bc1a28c8
- moved ctag generation to addressbook_bo
...
- include deleted contacts in ctag generation, as otherwise deleting entries does NOT change ctag
- implemented AlterPingChanges using ctag for ActiveSync
2010-12-02 19:42:03 +00:00
Jörg Lehrke
d3532ed7a1
Fix Apple CardDAV issue
2010-10-29 08:45:40 +00:00
Ralf Becker
c67a61b692
returning "403 Forbidden" if addressbook_bo->save() fails, happens when writing new entries in ABs without ADD rights
2010-10-20 16:16:03 +00:00
Ralf Becker
e86f5fb663
fixed bug: GroupDAV/CardDAV PUT request to /addressbook/ changes owner, also checking now required ACL for moving contacts between addressbooks
2010-10-20 15:47:30 +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
40d786871e
Improve Mac OS Addressbook.App CardDAV support as far as reasonable
2010-09-25 15:19: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