Commit Graph

148 Commits

Author SHA1 Message Date
Ralf Becker
b69de21bea fix PHP 8.0 TypeError: strlen(): Argument #1 ($str) must be of type string, array given 2022-01-17 21:35:50 +02:00
Ralf Becker
676fe9b36f * CardDAV/Addressbook: fix GET request regression after REST API introduction 2021-12-16 19:54:17 +02:00
Ralf Becker
66d45452ab fix PHP 8.0 TypeError: explode(): Argument #2 ($string) must be of type string, array given 2021-11-05 14:43:32 +01:00
Ralf Becker
59a6a3c717 fix CardDAV error with DAVx5 caused by PHP 8.0 throwing an error instead ignoring it with a warning
PHP 8.0 ValueError: mb_convert_encoding(): Argument #3 ($from_encoding) contains invalid encoding "tf-"
current code expected Content-Type header to have charset enclosed in quotes, which it was not
2021-10-11 09:50:46 +02:00
Ralf Becker
2c9949f362 REST API, do NOT take "Sync all in one addressbook" preference into account, but store in given AB 2021-09-28 11:35:01 +02:00
Ralf Becker
281e71ef71 use PUT with a UID as id to update an existing resource or create it, if not existing 2021-09-25 13:04:49 +02:00
Ralf Becker
e640873fc0 implement and document PATCH 2021-09-25 12:38:08 +02:00
Ralf Becker
1280de46d6 REST API allow sending a JSON patch to update or create a new contact (currently only via POST or PUT, not as PATCH!)
allows eg. to create a contact from a simple Wordpress contact-form only supporting POST requests and a flat object, see new example in the documentation
2021-09-24 18:06:13 +02:00
Ralf Becker
82c8ed51d2 Contacts REST API:
- implement missing PUT/POST of distribution list / CardGroups
- implement changes from next JsContact draft:
  + string plus extra localizations attribute instead of localizedString object
  + use "<domain>:<name>" for vendor attributes
- add/parse urn:uuid: prefix if UID is a UUID
2021-09-20 16:01:22 +02:00
Ralf Becker
e9998161a5 finished REST API for contacts modulo docu and bugs ;)
- JsCardGroup now used for distribution lists
- responses are not in "responses" attribute (no longer in root of object)
- fix sometimes empty / different members between PROPFIND/REPORT/JSON-GET and GET of group (caused by wrongly implemented limit to given AB)
- JSON pretty-print only if requested by Accept: application/pretty+json
- fix invalid JSON for errors (caused by opening {"responses": already sent
2021-09-19 11:09:44 +02:00
Ralf Becker
7617aae9d0 got POST, PUT and DELETE request to add, update and delete contacts working
added JSON exception handler with nicer JsCalendar parse errors
2021-09-17 20:15:36 +02:00
Ralf Becker
0768f5fadf WIP REST Api for contacts 2021-09-16 20:53:43 +02:00
Ralf Becker
38e2167166 WIP REST API for contacts using JsContacts draft 2021-09-15 18:45:45 +02:00
Ralf Becker
166718a22c remove config allowing to immediately delete contacts (as it's required for sync) 2021-05-18 14:02:51 +02:00
nathangray
84e03fe334 Addressbook: Fix contact categories were cleared when DAVx5 synced some Android clients 2021-04-30 09:26:00 -06:00
Ralf Becker
868135775c PHP 8 fixes 2021-03-29 16:47:19 +02:00
Ralf Becker
37be9f40d0 WIP contact sharing: context menu to share and filter for shared contacts 2020-10-16 21:34:42 +02:00
Ralf Becker
75403eea94 * CalDAV/CardDAV: allow removing categories 2019-05-28 18:48:14 +02:00
Ralf Becker
d151930412 dito for lists 2019-05-28 16:54:49 +02:00
Ralf Becker
c4f23f899f do NOT use xml CDATA for vCards to ensure correct replacement of control chars like VT 2019-05-28 16:27:50 +02:00
Ralf Becker
cc22e89242 * CalDAV: CalDAVSynchronizer: only allow owner/organizer to update or delete an event (not users with edit/delete rights) 2018-10-09 13:15:11 +02:00
Ralf Becker
13941bb0e6 * CardDAV: photo was not saved/changed in PUT requests 2018-08-24 13:56:38 +02:00
Ralf Becker
f1437d4ccb fixing a couple more PHP Warning count(): Parameter must be an array or an object that implements Countable 2018-04-13 09:12:26 +02:00
Ralf Becker
b58b9d06b9 * CardDAV/addresbook: fixed not working distribution-lists as groups in Mac addressbook 2018-04-12 13:03:14 +02:00
Ralf Becker
9777a04dad * CardDAV/Addressbook: fix can NOT create new entries on a minimal (non-compat) install
Caused by version-check agains not installed phpgwapi fails and causes new name-parts of url starting with a number to clash with existing contacts and therefore give a "412 Precondition failed"
2018-03-23 19:59:49 +01:00
Hadi Nategh
90a5e91fc7 * Addressbook: fix bug setting Hide User Account in preferences into Show all accounts breaks show accounts 2017-12-01 14:58:44 +01:00
Ralf Becker
e57c5832a6 * Adressbook/CardDAV/PostgreSQL: fix SQL error stalling sync of eg. eMClient with preference "Distributionlists as groups" enabled 2016-11-09 17:46:37 +01:00
Ralf Becker
7b95aa73b4 * CardDAV/Addressbook/PostgreSQL: fix SQL error, remove MySQL only FROM_UNIXTIME with our db abstration version 2016-11-02 09:40:16 +01:00
Ralf Becker
248fde6fef converted addressbook to use new api 2016-04-29 10:41:53 +00:00
Ralf Becker
dbb998de96 also add "principal-address" (URL of vCard of principal), as on pricipal itself 2016-04-27 13:45:46 +00:00
Ralf Becker
0e6fd77ffe * CardDAV: fix not working creation of new CardDAV account with OS X 10.11.4 addressbook (it stays empty)
OS X 10.11.4 addressbook does a propfind for "addressbook-home-set" and "directory-gateway" in the root and does not continue without it
2016-04-27 13:27:22 +00:00
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
7ada2354d3 move addresbook_bo to Api\Contacts, ldap to Api\Ldap, ldapserverinfo to Api\Ldap\ServerInfo, bo_tracking to Api\Storage\Tracking, historylog to Api\Storage\History, Api\Customfields to Api\Storage\Customfields 2016-03-06 13:45:15 +00:00
Ralf Becker
c33b041d23 * Addressbook/CardDAV: fix not working import / PUT of birthday in vCard
and prefer=representation on a "412 Precondition Failed" for a group
2015-10-16 07:50:43 +00:00
Ralf Becker
f1ba35613c * CardDAV/Addressbook: fix iOS 8.4 problem allways creating new contacts for admins in accounts addressbook, using now default or personal addressbook 2015-07-23 17:40:48 +00:00
Ralf Becker
40c9fb0adb fixed after r52504 empty PROPFIND in CardDAV 2015-04-18 13:20:56 +00:00
Ralf Becker
ef40fa8ae7 * CardDAV: fixed not working MULTIGET report, if more then 500 contacts requested 2015-04-15 10:00:25 +00:00
Ralf Becker
8da2d2a0ab fixed wrong (just the collection) Location header on POST to ?add-member url 2014-11-30 09:24:23 +00:00
Ralf Becker
40da5672bb * CardDAV/Addressbook/Preferences: accounts, primary group, all, ... were not selectable in personal preferences 2014-09-18 09:05:06 +00:00
Ralf Becker
fbf05c95f4 show addressbooks for user whos preferences are displayed, for "default" and "forced" only show acl independent settings 2014-07-23 14:00:20 +00:00
Ralf Becker
8c6ac14093 fixed typo 2014-07-13 09:01:09 +00:00
Ralf Becker
5090a02892 fixed sql error in carddav caused by sync-collection flag interpreted as filter 2014-02-20 19:38:21 +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
e0e4dfc55a * CardDAV/Addressbook: add "None" to forced preferences of addressbooks to sync in addition to personal one 2014-02-20 13:53:05 +00:00
Ralf Becker
43f558830c * Adressbook/CardDAV: changed (down-)scaling of images to width of 240px (was 60px) to cater for higher screen resolutions 2014-01-28 11:24:47 +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
52b4fd8654 * CardDAV/Addressbook: fixed all contacts were reported as NOT found and therefore not synchronised 2013-10-08 07:41:11 +00:00