Commit Graph

77 Commits

Author SHA1 Message Date
Peter Bieringer
bd1c408d7d sharing/propfind+proppatch: fix permission check for properties overlay 2026-04-09 20:41:35 +02:00
Peter Bieringer
c6b353498d propfind/log: replace legacy trace log 2026-04-08 21:49:55 +02:00
Peter Bieringer
d166b8fce1 sharing/propfind: only offer this privileges if sharing is enabled and not being a share (nested sharing is not supported) 2026-04-04 08:40:43 +02:00
Peter Bieringer
3d7f821300 sharing/propfind: log cosmetics 2026-04-03 16:10:10 +02:00
Peter Bieringer
4a8bede120 sharing/propfind: adjust priviledge handling 2026-04-03 16:09:34 +02:00
Max Berger
b6c1612bf1 share extended permissions in current-user-privilege-set 2026-04-03 08:01:10 +02:00
Peter Bieringer
eae5566865 sharing: bugfix on replacement 2026-03-24 21:40:29 +01:00
Peter Bieringer
8b8315ba93 sharing: improve backmapping 2026-03-24 21:40:29 +01:00
Peter Bieringer
5038a70e9f sharing/report,propfind: change from type bday to conversion 2026-03-24 21:40:29 +01:00
Peter Bieringer
f6d0b0b07c sharing: extend DB with Conversion and Actions(reserved) 2026-03-24 21:40:29 +01:00
Peter Bieringer
f3426b186b sharing/propfind: fix backmapping 2026-03-15 18:20:49 +01:00
Peter Bieringer
b9490b8bc7 sharing/bday: bugfix 2026-03-15 18:20:49 +01:00
Peter Bieringer
545074a32e sharing/bday: blacklist items having no bday 2026-03-15 18:20:49 +01:00
Peter Bieringer
e5c4c4ff1a sharing/bday: fix backmapping 2026-03-15 18:20:49 +01:00
Peter Bieringer
cd0e875ba9 sharing/bday: fix for mypy 2026-03-15 18:20:49 +01:00
Peter Bieringer
29e03840b9 sharing/bday: add support for contentlength+size 2026-03-15 18:20:49 +01:00
Peter Bieringer
f5822d1af8 sharing/bday: no sync support 2026-03-15 18:20:49 +01:00
Peter Bieringer
c5623bc7c7 sharing/bday/propfind: add mapping/handling support 2026-03-15 18:20:49 +01:00
Peter Bieringer
aafc09d81c sharing/propfind: feed ShareType (rev-5) 2026-03-15 18:18:51 +01:00
Peter Bieringer
bc70be2fd7 sharing/code: 3.9 2026-03-14 22:48:57 +01:00
Peter Bieringer
65982e26cb sharing/propfind: fix/reorg collection listing 2026-03-14 17:28:52 +01:00
Peter Bieringer
c1b46a8b7a sharing/propfind: fix Properties overlay 2026-03-14 17:15:25 +01:00
Peter Bieringer
aa5d59a48d sharing/propfind: bugfix related to backmap in case of listing 2026-03-14 12:40:30 +01:00
Peter Bieringer
7874dc62ea sharing/property-overlay: permit and replace displayname 2026-03-14 07:25:26 +01:00
Peter Bieringer
b27aac78e5 sharing/propfind: fix/align priv output 2026-03-14 06:34:50 +01:00
Peter Bieringer
ac03567704 sharing/propfind: announce share permissions 2026-03-14 06:34:50 +01:00
Peter Bieringer
ffc5184b11 sharing: add support for clearing properties, doc update, fixes 2026-03-07 07:54:37 +01:00
Peter Bieringer
6c7e9c5ef5 sharing: map_list code improvement 2026-03-06 06:08:44 +01:00
Peter Bieringer
bef0727b94 cosmetics, fix mk* conflict incl. testcases 2026-03-05 21:04:38 +01:00
Peter Bieringer
5c55a86f77 sharing/propfind overlay bugfix 2026-03-01 06:38:05 +01:00
Peter Bieringer
c8e527fd4a sharing: minor fixes 2026-02-28 22:10:24 +01:00
Peter Bieringer
99f2472bfa sharing: add property overlay and update support 2026-02-27 08:30:54 +01:00
Peter Bieringer
f56612f208 call trace only on enabled debug 2026-02-24 08:19:51 +01:00
Peter Bieringer
c2edfee738 sharing: add support for propfind 2026-02-24 08:19:51 +01:00
Peter Bieringer
58bf84e595 extend copyright 2026-02-22 12:48:11 +01:00
Peter Bieringer
02e48b3841 turn iteration result into list and shorten code covered by lock 2026-02-22 12:47:32 +01:00
Peter Bieringer
39dee28e4a use optional permissions filter / use http_depth as variable 2026-02-22 12:46:45 +01:00
John Wiegley
1f76b08831 Add CardDAV supported-address-data, update vCards to 4.0 (#1948)
* Add CardDAV supported-address-data, update vCards to 4.0

- radicale/app/propfind.py: Add CS:getctag and CR:supported-address-data
  properties to VADDRESSBOOK collections in allprop responses; implement
  CR:supported-address-data handler that advertises vCard 4.0 as preferred
  format with 3.0 fallback per RFC 6352 section 6.2.2

- radicale/tests/static/contact1.vcf: Update from vCard 3.0 to 4.0 format

- radicale/tests/static/contact_multiple.vcf: Update both contact entries
  from vCard 3.0 to 4.0 format

- radicale/tests/static/contact_photo_with_data_uri.vcf: Update from vCard
  3.0 to 4.0 format; change PHOTO property from 3.0 syntax with ENCODING=b
  and TYPE parameters to 4.0 data URI syntax

* Conditionally offer vCard 4.0 based on vobject version

- Add vobject_supports_vcard4() helper function in utils.py
- Modify propfind.py to only advertise vCard 4.0 if vobject >= 1.0.0
- Add vCard 3.0 static test files for fallback testing
- Add tests for both vCard 3.0 and 4.0 contacts (v4 tests skipped if
  vobject < 1.0.0)
- Add propfind tests for CR:supported-address-data property

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Default vCard fixtures to v3.0, add explicit v4 files

- contact1.vcf: Change VERSION from 4.0 to 3.0 to make vCard 3.0 the default
  test fixture format, since vCard 3.0 is more widely supported

- contact1_v3.vcf: Delete file as contact1.vcf now serves as the v3.0 fixture

- contact1_v4.vcf: Add new file with VERSION 4.0 for explicit vCard 4.0
  testing with vobject >= 1.0.0

- contact_multiple.vcf: Change VERSION from 4.0 to 3.0 for both contacts to
  align with new default

- contact_multiple_v3.vcf: Delete file as contact_multiple.vcf now serves as
  the v3.0 fixture

- contact_multiple_v4.vcf: Add new file with VERSION 4.0 for both contacts

- contact_photo_with_data_uri.vcf: Change VERSION from 4.0 to 3.0 and update
  PHOTO property to use v3.0 format with ENCODING=b;TYPE=png parameters

- contact_photo_with_data_uri_v3.vcf: Delete file as
  contact_photo_with_data_uri.vcf now serves as the v3.0 fixture

- contact_photo_with_data_uri_v4.vcf: Add new file with VERSION 4.0 and v4.0
  PHOTO data URI format

- test_base.py: Update test methods to use renamed fixture files, with v3.0
  tests using default fixtures and v4.0 tests using explicit _v4.vcf files

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 16:28:10 +01:00
Peter Bieringer
a7e9521b38 honor RFC4791#5.2.5: SHOULD NOT be returned by a PROPFIND DAV:allprop request 2025-12-12 08:49:13 +01:00
Peter Bieringer
e1b0721f9e change to dedicated option for propfind/max_resource_size 2025-12-11 22:55:41 +01:00
Peter Bieringer
6e3b277ff5 reduce to 80% for base64 coverage 2025-12-11 08:59:44 +01:00
Peter Bieringer
dd153df6cb add support for max-resource-size using max-content-length 2025-12-11 08:54:42 +01:00
Peter Bieringer
fcfbde9608 feed max-content-length into functions 2025-12-11 08:54:42 +01:00
Peter Bieringer
64f5e58549 add support for logging XML request conditionally for profiling 2025-12-10 18:09:04 +01:00
Peter Bieringer
1c7ff414a9 extend app calls with remote host+useragent 2025-11-16 17:06:00 +01:00
Peter Bieringer
4980172def extend copyright 2025-11-16 16:57:31 +01:00
Dipl. Ing. Péter Varkoly
a272d3039e Implement using group calenders.
Based on the ldap groups the user is member of group calender usage is implemented.
The group calenders must be placed in the GROUPS directory based under collection_root_folder.
The name of the group calender directory is the base64 encoded name of the group to avoid trouble with spaces and special characters in name.
If the directory does not exist the group will be ignored.
2024-09-22 16:56:53 +02:00
Mathieu Dupuy
47bc966a13 fix misspellings 2024-07-24 12:29:13 +02:00
MatthewHana
825464f102 Additional type checking for getcontentcount prop
Tests keep failing due to static type checking for condition that won't occur due to earlier checking.  Bringing checking into if statement.
2024-03-13 02:16:16 +11:00
MatthewHana
2c13b8d2e0 Update propfind.py
Don't return getcontentcount prop on leaf or principal collection.
2024-03-13 02:02:23 +11:00