ralf
f60ee71c1c
WIP Calendar REST API
2023-07-25 18:38:34 +02:00
ralf
6b17f28490
* Addressbook/CardDAV: show and allow to sync for default and forced preferences all ABs of the admin user
...
also do NOT name the groups own AB "personal"
2023-04-27 16:19:35 +02:00
ralf
c3e53c9d86
replaced ProfindIterator now in Calendar and InfoLog too with a generator
2023-02-15 19:50:44 +01:00
ralf
d2e03e6a28
setting same chunk-size of 500 as iterator used for optimal performance
2023-02-15 12:41:33 +01:00
ralf
9ba61e0b25
implement PROPFIND and REPORTs specially multiget with a generator to fix various problems with the iterator logic
2023-02-15 12:40:12 +01:00
ralf
27bd803e84
fix empty collection in PROPFIND/REPORT after last commit caused by creating a reference / NULL value in filter for path-attr/caldav_name
2023-02-15 08:45:28 +01:00
ralf
5e0fd45173
fix found URL in multiget REPORT where reported as NOT found too, if number of URLs exceeds chunk-size of 500
2023-02-13 23:16:43 +01:00
ralf
0b86ba7a20
* Addressbook/CardDAV: fix new Thunderbird 110 could not sync big addressbooks
...
TB 110 does an initial PROPFIND and then requests ALL resources in a single multiget REPORT, which caused two problems:
a) enabled CalDAV/CardDAV request logging switched output-buffering on and then runs out of memory --> switching it and therefore logging off for multiget REPORTS with more then 200 resources
b) PROPFIND iterator wrongly continued running, if the not found resources together with the found ones exceeded the chunk-size of 500
2023-02-13 22:42:13 +01:00
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