From 15cb7955cc4c61a2f535d53e28af3b97d07b4c49 Mon Sep 17 00:00:00 2001 From: Peter Bieringer Date: Sat, 18 Jul 2026 15:07:07 +0200 Subject: [PATCH] group: add support for propfind --- radicale/app/propfind.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/radicale/app/propfind.py b/radicale/app/propfind.py index 13d1f2fc..531dd52e 100644 --- a/radicale/app/propfind.py +++ b/radicale/app/propfind.py @@ -27,8 +27,8 @@ from http import client from typing import (Dict, Iterable, Iterator, List, Optional, Sequence, Tuple, Union) -from radicale import (httputils, pathutils, rights, storage, types, utils, - xmlutils) +from radicale import (httputils, pathutils, rights, sharing, storage, types, + utils, xmlutils) from radicale.app.base import Access, ApplicationBase from radicale.log import logger @@ -639,7 +639,10 @@ class ApplicationPartPropfind(ApplicationBase): if http_depth == "1": logger.trace("PROPFIND: get shared collections") # check for shared collections related to user, Enabled and not Hidden - collections_share_list = self._sharing.sharing_collection_list(User=user, Enabled=True, Hidden=False) + user_lookup = user + if self._rights._user_groups is not None and len(self._rights._user_groups) > 0: + user_lookup += sharing.SHARING_SEPARATOR_GROUP + ','.join(self._rights._user_groups) + collections_share_list = self._sharing.sharing_collection_list(User=user_lookup, Enabled=True, Hidden=False) if collections_share_list: for share in collections_share_list: c_share = share['PathOrToken']