b6ad270971
- WebDAV-клиент (PROPFIND/GET/PUT/DELETE) под сервисным аккаунтом - access.py: can_access_pharmacy_docs (аптека видит только свою) + safe_filename (защита от path traversal); путь папки выводится только из объекта аптеки - Вьюхи documents/download/upload/delete с проверкой доступа на каждом эндпоинте - Вкладка «Документы» на pharmacy-detail с ленивой HTMX-загрузкой - Тесты авторизации: свой/чужой скоуп, 403, traversal, аноним Аптечные сотрудники учёток Nextcloud не имеют — доступ идёт через портал под сервисным аккаунтом, вся авторизация на стороне ACORE. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>