aboutsummaryrefslogtreecommitdiffstats
path: root/apps/dav/lib
Commit message (Collapse)AuthorAgeFilesLines
* fix(imip): dont compare events for the reply messagefix/reply-messageHamza Mahjoubi2025-06-052-2/+30
| | | | Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
* fix(dav): file drop nicknameskjnldsv2025-06-051-6/+18
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* docs(caldav): improve documentation of CalDavBackend::getCalendarsForUserCountdocs/caldav/getCalendarsForUserCountRichard Steinmetz2025-06-041-7/+5
| | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* feat: link upcoming event to calendar app modalfeat/noid/link-to-calendar-eventMaksim Sukharev2025-06-031-14/+30
| | | | Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
* refactor(dav): remove unused CalDAVBackend methodremove-unused-methodThomas Citharel2025-06-011-19/+0
| | | | Signed-off-by: Thomas Citharel <tcit@tcit.fr>
* Merge pull request #52215 from nextcloud/perf/carddav/dont-query-circlesDaniel2025-06-011-1/+0
|\ | | | | perf(carddav): don't query circle memberships
| * perf(carddav): don't query circle membershipsperf/carddav/dont-query-circlesRichard Steinmetz2025-04-161-1/+0
| | | | | | | | | | | | | | It is not possible to share address books with circles so it is pointless to query for address books shared with joined circles. Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | fix(caldav): use direct.edit route in event activitiesfix/caldav/use-direct-route-event-activityRichard Steinmetz2025-06-011-7/+2
| | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | Merge pull request #53145 from nextcloud/dav-file-write-logRobin Appelman2025-05-301-1/+3
|\ \ | | | | | | fix: log error when writing stream to dav file
| * | fix: log error when writing stream to dav filedav-file-write-logRobin Appelman2025-05-301-1/+3
| | | | | | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | | docs(caldav): update documentation for calendar searchdocs/53002/calendar-search-implDaniel Kesselberg2025-05-282-20/+0
|/ / | | | | | | | | | | Remove the documentation from the implementaitons. Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* | fix(DAV): Check if the header is actually the expected formatJoas Schilling2025-05-281-0/+6
| | | | | | | | | | | | | | Not sure how the test ever passed as it can only throw with strict types which are not yet enabled Signed-off-by: Joas Schilling <coding@schilljs.com>
* | fix: hide guests group from principal backendbug/noid/hide-guests-groupsDaniel Kesselberg2025-05-231-3/+5
| | | | | | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* | Merge pull request #52810 from ↵Louis2025-05-221-10/+25
|\ \ | | | | | | | | | nextcloud/artonge/feat/do_not_require_samesite_strict_cookie_on_public.php
| * | fix: Move CSRF check from base to PublicAuth for public.phpLouis Chemineau2025-05-211-10/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This currently prevent directly accessing a ressource when clicking on a link on a third party site. Example, clicking on `https://example.com/public.php/dav/files/pqLWcA269zfzXez/?accept=zip` in a GitHub comment. Skipping the check is an issue with password protected shares, as it allows third party sites to request the ressource when the user already entered the password, aka CSRF. So after removing the check from `base.php`, we need to add the it again in the `PublicAuth` plugin. We also add a redirect to be helpful to the user. **Warning**: this adds the limitation that clicking on a direct download link for password protected shares will redirect you to the password form, and then to the main share view. Fix #52482 Signed-off-by: Louis Chemineau <louis@chmn.me>
* | | fix(caldav): don't send invitations to circlesfix/caldav/no-invitations-to-circlesRichard Steinmetz2025-05-212-3/+19
| | | | | | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | | Merge pull request #52879 from nextcloud/bug/noid/clear-dav-photo-cacheChristoph Wurst2025-05-194-22/+91
|\ \ \ | | | | | | | | Add command to clear dav's photo cache
| * | | refactor(dav): replace IAppData with IAppDataFactory for PhotoCachebug/noid/clear-dav-photo-cacheDaniel Kesselberg2025-05-153-22/+16
| | | | | | | | | | | | | | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
| * | | feat: add command to clear contacts photo cacheDaniel Kesselberg2025-05-151-0/+75
| | | | | | | | | | | | | | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* | | | Merge pull request #52890 from nextcloud/chore/move-stream-copy-implementationFerdinand Thiessen2025-05-171-1/+2
|\ \ \ \ | |_|/ / |/| | | chore: move streamCopy implementation from `OC_Helper` to `OCP\Files`
| * | | chore: move streamCopy implementation from `OC_Helper` to `OCP\Files`Ferdinand Thiessen2025-05-161-1/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | The function was already there but called the legacy version. So moved the implementation and migrated all usages of it. Sadly the interface was slightly different so adjusted it to be compatible with both legacy and the OCP one. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* | | fix(dav): correctly handle uploading folders with same name as a filefix/file-dropFerdinand Thiessen2025-05-161-31/+40
| | | | | | | | | | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* | | refactor(dav): use Node API instead of private files view for filedrop pluginFerdinand Thiessen2025-05-161-13/+19
| | | | | | | | | | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* | | Merge pull request #52708 from ↵Richard Steinmetz2025-05-161-0/+30
|\ \ \ | |/ / |/| | | | | | | | nextcloud/fix/dav/update-rooms-resources-background-job fix(dav): add repair step to queue job to update rooms and resources
| * | fix(dav): add repair step to queue job to update rooms and resourcesfix/dav/update-rooms-resources-background-jobRichard Steinmetz2025-05-091-0/+30
| | | | | | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | | refactor: Apply rector refactoringschore/deps/rector-2.0provokateurin2025-05-144-17/+7
| | | | | | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* | | fix(dav): only consider user's principal for unsharing entriesbug/49834/calendar-unsharingDaniel Kesselberg2025-05-142-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: Find all entries in `dav_shares` with `access = 5` for the user's principal, as well as group and circle memberships. After: Find all entries in `dav_shares` with `access = 5` solely for the user's principal. Future support for unsharing group or circle principals could be considered as a feature enhancement. Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* | | fix(caldav): prevent unshare entry creation for owner unsharingDaniel Kesselberg2025-05-148-29/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Introduces a `unshare` method in `CalDavBackend` to handle user unshares. - Implements check to determine if unshare entry is needed based on group/circle membership. - Ensures `updateShares` is only used when the calendar owner manages shares. - Resolves issue where unsharing a calendar as owner created an unshare entry in `oc_dav_shares`. Related PRs: - https://github.com/nextcloud/server/pull/43117 - https://github.com/nextcloud/server/pull/47737 Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* | | fix(dav): remove unnecessary plugin getHTTPMethodsfeat/file-drop-recursiveJohn Molakvoæ (skjnldsv)2025-05-131-14/+0
| | | | | | | | | | | | Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
* | | feat(dav): allow uploading folders to public sharesJohn Molakvoæ (skjnldsv)2025-05-133-38/+118
|/ / | | | | | | Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
* | fix: add calendar enablefix/noid/calendar-enabledSebastianKrupinski2025-05-094-2/+55
| | | | | | | | Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
* | Merge pull request #52586 from nextcloud/bugfix/noid/remove-sleep-from-throttlerDaniel2025-05-063-5/+12
|\ \ | | | | | | fix(throttler): Always use the sleepDelayOrThrowOnMax instead of deprecated sleepDelay
| * | fix(throttler): Remove the sleep from the throttler that throwsbugfix/noid/remove-sleep-from-throttlerJoas Schilling2025-05-023-5/+12
| | | | | | | | | | | | | | | | | | | | | The sleep is not adding benefit when it's being aborted with 429 in other cases anyway. Signed-off-by: Joas Schilling <coding@schilljs.com>
* | | Merge pull request #52182 from nextcloud/feat/dav/public-share-chunked-uploadJohn Molakvoæ2025-05-0612-42/+175
|\ \ \
| * | | feat(dav): Enable chunked upload for public sharesprovokateurin2025-05-052-1/+14
| | | | | | | | | | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
| * | | feat(dav): Allow UploadHome to handle public sharesprovokateurin2025-05-053-6/+21
| | | | | | | | | | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
| * | | refactor(dav): Pass UID from UploadHome to UploadFolder and CleanupServiceprovokateurin2025-05-053-15/+27
| | | | | | | | | | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
| * | | refactor(dav): Replace baseuri manipulation with RootCollection for public ↵provokateurin2025-05-055-25/+113
| | | | | | | | | | | | | | | | | | | | | | | | shares Signed-off-by: provokateurin <kate@provokateurin.de>
| * | | feat(dav): Allow share principalsprovokateurin2025-05-051-0/+5
| | | | | | | | | | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* | | | feat: Calendar Exportfeat/issue-563-calendar-exportSebastianKrupinski2025-05-066-1/+277
|/ / / | | | | | | | | | Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
* / / fix(dav): move orphan cleaning logic to a chunked background jobRichard Steinmetz2025-05-052-62/+114
|/ / | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | Merge pull request #52228 from nextcloud/fix/issue-50748-calendar-object-moveChristoph Wurst2025-04-302-16/+24
|\ \ | | | | | | fix(CalDAV): do not ignore move command object target uri
| * | fix: do not ignore move command object target urifix/issue-50748-calendar-object-moveSebastianKrupinski2025-04-162-16/+24
| | | | | | | | | | | | Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
* | | fix(dav): check the owner displayName scope before giving attributeskjnldsv2025-04-303-1/+24
| | | | | | | | | | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* | | perf(caldav): increase chunk size in RemoveOrphanEventsAndContacts repair stepperf/caldav/bigger-chunks-orphan-repairRichard Steinmetz2025-04-291-1/+1
| | | | | | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | | Merge pull request #51592 from nextcloud/fix/search-castFerdinand Thiessen2025-04-291-1/+7
|\ \ \ | | | | | | | | fix(dav): throw invalid argument when property type does not match
| * | | fix(dav): throw invalid argument when property type does not matchfix/search-castFerdinand Thiessen2025-04-271-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Resolves https://github.com/nextcloud/server/issues/49972 Currently a TypeError is thrown when casting fails, this lead to a HTTP 500 error. Instead throw a proper InvalidArgumentError so the user receives a HTTP 400. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* | | | fix: check if config is enabled before creating a default contactHamza Mahjoubi2025-04-281-0/+7
|/ / / | | | | | | | | | Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
* | | refactor(dav): refactor inline event listenerschore/dav/refactor-inline-listenersRichard Steinmetz2025-04-253-29/+11
| | | | | | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* | | refactor(dav): use first class callable syntax to boot the appchore/dav/first-class-callableRichard Steinmetz2025-04-251-4/+4
| | | | | | | | | | | | Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>