72 Commits

Author SHA1 Message Date
Salvatore Martire bd995ff5d4 fix: stop calling DI container in SharedStorage
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2026-06-23 08:39:39 +00:00
Robin Appelman eb6f78e26d feat: implement authoritative mount provider for share provider
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-02-13 19:02:05 +01:00
Carl Schwan 8f81b91733 refactor(mount-provider): Refactor share mount provider
- Add more precise types
- Remove dead code

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-04 12:46:14 +01:00
Robin Appelman d71c6796ca feat: perform share mount validation on share instead of on mount
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-21 16:35:53 +01:00
Louis Chmn 7c9c74f4f0 feat(files_sharing): Implement partial mount providers
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-01-16 08:32:14 +01:00
Carl Schwan cc7655136c refactor(share): Remove code related to science mesh integration
The app was not updated for the past 2 years.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-03 14:11:58 +01:00
Salvatore Martire 881453dbde refactor(files_sharing): extract getMountsForUser logic
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-11-28 13:02:45 +01:00
Salvatore Martire 2d74a755a8 refactor(files_sharing): apply DRY in MountProvider
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-11-28 13:02:45 +01:00
Salvatore Martire 111d9397ae refactor(files_sharing): reduce complexity in MountProvider::buildSuperShares
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-11-28 13:02:45 +01:00
Salvatore Martire 2ae7c3ecae fix(files_sharing): remove unnecessary array_values in MountProvider
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-11-28 13:02:45 +01:00
Salvatore Martire ff28ac7ea2 refactor(files_sharing): apply DRY for user and node ID in MountProvider
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-11-28 13:02:45 +01:00
Benjamin Gaussorgues 855152110f perf(mounts): avoid array_merge in mounts loop
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-09-09 10:51:37 +02:00
Richard Steinmetz 0bd5128d45 perf: join array_merge calls in MountProvider::getMountsForUser()
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-04 08:18:12 +02:00
Ferdinand Thiessen 5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
provokateurin 8e580f8548 fix(files_sharing): Hide own reshares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:53 +02:00
Joas Schilling 9637fe6474 Revert "fix(files_sharing): Filter own shares that are reshares" 2025-05-19 17:16:39 +02:00
provokateurin 7c6602cd8d fix(files_sharing): Filter own shares that are reshares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-19 08:18:16 +02:00
Robin Appelman 1185b5ee35 fix: don't return other mounts from share mount provider
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-11 14:20:21 +02:00
Robin Appelman bcbf0e76a7 fix: more optimized caching for share target verification
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-08 16:42:01 +02:00
provokateurin 381077028a refactor(apps): Use constructor property promotion when possible
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-21 12:37:59 +02:00
Côme Chilliet 1580c8612b chore(apps): Apply new rector configuration to autouse classes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-10-15 10:40:25 +02:00
provokateurin 9836e9b164 chore(deps): Update nextcloud/coding-standard to v1.3.1
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Daniel Kesselberg af6de04e9e style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
skjnldsv 75ca4944c9 feat(files_sharing): allow mixed values in share attributes and allow storing email arrays
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
Andy Scherzinger 1e04619675 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-06 22:53:41 +02:00
Joas Schilling aa5f037af7 chore: apply changes from Nextcloud coding standards 1.1.1
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Benjamin Gaussorgues 29c1848eda Migrate files sharing to PSR LoggerInterface
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-07-06 14:08:42 +02:00
Michiel de Jong c0e84cb512 Add SHARE_TYPE_SCIENCEMESH
Signed-off-by: Michiel de Jong <michiel@unhosted.org>
2023-03-08 16:46:55 +01:00
Dariusz Olszewski 255d1dd686 Read notes from share already loaded into memory
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
2022-10-07 23:24:12 +02:00
Carl Schwan 7b723813ce Multiple fixes
- Fix tests
- Use non deprecated event stuff
- Add a bit of type hinting to the new stuff
- More safe handling of instanceOfStorage (share might not be the first
  wrapper)
- Fix resharing

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-07-31 19:37:59 +02:00
Vincent Petry a95c19e14b Add share attributes + prevent download permission
Makes it possible to store download permission

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-07-28 16:53:22 +02:00
Carl Schwan d5c23dbb9f Move CappedMemoryCache to OCP
This is an helpful helper that should be used in more place than just
server and this is already the case with groupfodlers, deck, user_oidc
and more using it, so let's make it public

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-07-14 15:54:31 +02:00
Carl Schwan ec6b83cc18 Add stricter psalm type for CappedMemoryCache
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-12 15:06:18 +02:00
Robin Appelman bda8601648 cache the verification of the share mountpoint
after the initial verification this can only really be invalidated by a system mount (external/group/etc) being created at the share target since any normal file/folder creation will already conflict with the share

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-21 18:08:35 +02:00
Robin Appelman db2418be85 invalidate mount cache after share rename
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-03-24 17:36:56 +01:00
Robin Appelman 8597d9c7d4 add event for when a share is mounted
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-08-24 15:26:50 +02:00
John Molakvoæ (skjnldsv) 215aef3cbd Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Christoph Wurst d89a75be0b Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
Julius Härtl 53bb44c09f Include deck shares in sharing mounts
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:24 +01:00
Christoph Wurst 2a054e6c04 Update the license headers for Nextcloud 20
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-08-24 14:54:25 +02:00
Morris Jobke fedf9c69d9 Use matching parameter names form interfaces and implementations
Found by Psalm 3.14.1

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-19 18:16:35 +02:00
Joas Schilling 89ed2c37bf Update share type constant usage
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 16:49:16 +02:00
Joas Schilling 56b04c65f7 Always sort shares in a reliable way
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-08 14:47:15 +02:00
Christoph Wurst cb057829f7 Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Christoph Wurst caff1023ea Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst afbd9c4e6e Unify function spacing to PSR2 recommendation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +02:00
Christoph Wurst 5bf3d1bb38 Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Joas Schilling d3b62893af Make sure the super share also has a valid type
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:47 +01:00
Joas Schilling 60da25681e Only restrict loading of group and user shares for now
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:00 +01:00
Joas Schilling dcdbea54e6 Respect the accepted flag for group and user shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:13:38 +01:00