Commit Graph

46 Commits (feat/database/query-result-fetch-associative-fetch-num)

Author SHA1 Message Date
Benjamin Gaussorgues 29c1848eda
Migrate files sharing to PSR LoggerInterface
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-07-06 14:08:42 +07:00
Michiel de Jong c0e84cb512 Add SHARE_TYPE_SCIENCEMESH
Signed-off-by: Michiel de Jong <michiel@unhosted.org>
2023-03-08 16:46:55 +07: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 +07: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 +07: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 +07: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 +07:00
Carl Schwan ec6b83cc18 Add stricter psalm type for CappedMemoryCache
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-12 15:06:18 +07: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 +07:00
Robin Appelman db2418be85
invalidate mount cache after share rename
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-03-24 17:36:56 +07: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 +07:00
John Molakvoæ (skjnldsv) 215aef3cbd
Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +07: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 +07: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 +07: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 +07: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 +07:00
Joas Schilling 89ed2c37bf
Update share type constant usage
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 16:49:16 +07: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 +07:00
Christoph Wurst cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +07: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 +07: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 +07:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +07: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 +07: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 +07: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 +07:00
Robin Appelman 67f3d6f0a6
cache parent exists status during share setup
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 21:28:01 +07:00
Robin Appelman 720b27d60b
only determine is sharing is disabled for a user once
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 21:27:54 +07:00
Robin Appelman b79f338e71
re-use view instances for shared storages
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 21:27:48 +07:00
Robin Appelman 3155c1bd9a
more efficient unique share target generation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 19:54:42 +07:00
Daniel Calviño Sánchez 8084ba516f Add room shares to the MountProvider for shares
The MountProvider for shares creates mount points for the files shared
with the user, which makes possible to use the received shared files and
folders as regular files and folders.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-08-08 14:25:43 +07:00
Morris Jobke 0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +07:00
Joas Schilling 35f6b8716e Merge pull request #3884 from nextcloud/downstream-26956
Skip null groups in group manager
2017-03-20 12:27:38 +07:00
Maxence Lange 69694012ab shares-circles
Signed-off-by: Maxence Lange <maxence@nextcloud.com>
2017-03-17 18:48:33 +07:00
Joas Schilling bd97b7d130
Use DI
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-17 10:23:04 +07:00
Vincent Petry 377fdf3860
Skip null groups in group manager (#26871) (#26956)
* Skip null groups in group manager (#26871)

* Skip null groups in group manager

* Also skip null groups in group manager's search function

* Add more group null checks in sharing code

* Add unit tests for null group safety in group manager

* Add unit tests for sharing code null group checks

* Added tests for null groups handling in sharing code

* Ignore moveShare optional repair in mount provider

In some cases, data is inconsistent in the oc_share table due to legacy
data. The mount provider might attempt to make it consistent but if the
target group does not exist any more it cannot work. In such case we
simply ignore the exception as it is not critical. Keeping the
exception would break user accounts as they would be unable to use
their filesystem.

* Adjust null group handing + tests

* Fix new group manager tests

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-17 00:07:03 +07:00
Vincent Petry 000ba6484f
When grouping shares, sort by stime then id (#26777)
If share times are equal, the first share should still win instead of
having the shares swapped.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-12-19 17:38:33 +07:00
Robin Appelman 2f03fcab4a
let the share backend get the node cacheentry to save queries
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-17 18:48:38 +07:00
Joas Schilling 246bb9f33d
Move OC\Files\Storage\Shared to the right namespace 2016-10-20 20:27:44 +07:00
Vincent Petry 2404f6a5a7
Make share target consistent when grouping group share with user share
In some situations, a group share is created before a user share, and
the recipient renamed the received share before the latter is created.
In this situation, the "file_target" was already modified and the second
created share must align to the already renamed share.

To achieve this, the MountProvider now groups only by "item_source"
value and sorts by share time. This makes it so that the least recent
share is selected as super-share and its "file_target" value is then
adjusted in all grouped shares.

This fixes the issue where this situation would have different
"file_target" values resulting in two shared folders appearing instead
of one.
2016-08-03 10:16:28 +07:00
Vincent Petry 714d7ec936
Improved share grouping readability + fixed test 2016-08-03 10:16:28 +07:00
Roeland Jago Douma 04d5465228
Group shares with same source and target
Fixes #24575

Note that this is a very limited solution and eventually we want smarter
merging!
2016-08-03 10:16:28 +07:00
Joas Schilling 0215b004da
Update with robin 2016-07-21 18:13:58 +07:00
Joas Schilling 813f0a0f40
Fix apps/ 2016-07-21 18:13:57 +07:00
Vincent Petry ca168265ef Filter out group shares for owner where owner is included (#25190) 2016-06-21 11:36:28 +07:00
Robin Appelman bb465a7ab4 Catch exceptions while creating shared mounts (#25077) 2016-06-20 22:11:05 +07:00
Lukas Reschke aba539703c
Update license headers 2016-05-26 19:57:24 +07:00
Joas Schilling 3a716ae91c
Move lib/ to PSR-4 2016-05-25 14:59:59 +07:00