Commit Graph

116 Commits (7fb877ea1b8e97211ed6de37fa237bbc64248192)

Author SHA1 Message Date
nfebe 8725129312 fix(sharing): Allow reasonable control 4 'Hide download' on fed shares
When creating public links from federated shares, users should be able to set
the 'Hide download' option independently as long as they are more restrictive
than the original share permissions.

Previously, the `checkInheritedAttributes` method was ignoring user preferences
and always overriding the hideDownload setting based solely on inherited
permissions, preventing users from disabling downloads even when the parent
share allowed them.

This fix implements some sort of inheritance logic:
- Users can only be MORE restrictive than parent shares, never LESS restrictive
- If parent hides downloads -> child MUST hide downloads (enforced)
- If parent allows downloads -> child can CHOOSE to hide or allow downloads
- If parent forbids downloads entirely -> child cannot enable downloads

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-11-28 13:42:45 +07:00
nfebe dea8324912 feat(files_sharing): Toggle display for trusted server shares
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-08-01 12:18:36 +07:00
Ferdinand Thiessen 8fc1b6f1cd fix(sharing): Ensure download restrictions are not dropped
When a user receives a share with share-permissions but also with
download restrictions (hide download or the modern download permission attribute),
then re-shares of that share must always also include those restrictions.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-04 15:06:11 +07:00
Ferdinand Thiessen 2926fe270a fix(files_sharing): Respect permissions passed when creating link shares
Given:
User creates a link or email share with permissions=4 (create only = file drop).

Problem:
Currently the permissions are automatically extended to permissions = 5
(READ + CREATE). Work around was to create the share and directly update
it.

Solution:
Respect what the user is requesting, create a file drop share.

Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-28 17:26:28 +07:00
provokateurin beea8854ca
feat(files_sharing): Allow users with share permission to manage shares on IShareOwnerlessMount
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-11-25 10:27:31 +07:00
provokateurin aacb3ddc1e
fix(files_sharing): Cleanup error messages
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-28 09:07:41 +07:00
provokateurin 381077028a
refactor(apps): Use constructor property promotion when possible
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-21 12:37:59 +07:00
dependabot[bot] bb598c8451
chore(deps): Bump nextcloud/coding-standard in /vendor-bin/cs-fixer
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/nextcloud/coding-standard/releases)
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/coding-standard/compare/v1.3.1...v1.3.2)

---
updated-dependencies:
- dependency-name: nextcloud/coding-standard
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-19 07:57:35 +07: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 +07:00
Côme Chilliet 1a4978c4ea
chore: Apply rector configuration to apps folder
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-09-20 17:51:00 +07: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 +07:00
Robin Appelman 7661a7e90a test: fix ShareAPIControllerTest.php
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-09-18 16:10:14 +07:00
Côme Chilliet 801733e523
fix: Remove OCP\Files\Storage interface deprecated since version 9
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-09-16 18:10:48 +07:00
Christoph Wurst 49dd79eabb
refactor: Add void return type to PHPUnit test methods
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-09-15 22:32:31 +07:00
skjnldsv bb37954abb fix(files_sharing): adjust permissions from custom edit and delete check methods
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-09-11 13:17:42 +07: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 +07:00
skjnldsv 967b3848e0 fix(files_sharing): phpunit & openapi fixes
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +07:00
Andy Scherzinger 1e04619675
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-06-06 22:53:41 +07:00
fenn-cs 9a0913afdc refactor(shareApiController): use contrusctor property promotion & DI logger
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-04-18 02:01:08 +07:00
Robin Appelman e7a7b4a401 perf: switch places that always use the first getById result to getFirstNodeById
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-03-04 13:57:31 +07:00
Benjamin Gaussorgues 01983d50d4
feat(share): save date and time for expiration
Because of timezones, not saving time can lead to unexpected behaviour
when sharing an item sooner than timezone offset
Example: sharing a file before 9am when in UTC+9

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-02-22 11:26:01 +07:00
John Molakvoæ 4a509dfe8e
fix: phpunit
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2024-02-13 21:06:31 +07:00
Vincent Petry 839ddaa354
feat: rename users to account or person
Replace translated text in most locations

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2024-02-13 21:06:30 +07:00
Benjamin Gaussorgues cc3a2c351a
fix(share): use user timezone to parse share expiration date
If an user in UTC+1 try to create a share at 00:00, it's day D for him, but
D-1 for the server (UTC).
This fix aims to apply the correct offset

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-01-09 17:28:11 +07: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 +07:00
jld3103 c6806684d2
files_sharing: Add OpenAPI spec
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-07-31 16:58:49 +07:00
John Molakvoæ f5f142d31b
fix: adjust testing
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2023-07-11 13:52:28 +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
Jan-Philipp Litza a7abe2c35a Honor permissions of new link share via OCS API
The API currently overrides the supplied permissions with "read only"
when a file is shared via link. It allows to update the permissions
later, however.

This keeps the default to "read only" but honors the permissions
supplied by API call if any.

Signed-off-by: Jan-Philipp Litza <jpl@plutex.de>
2022-12-06 16:00:20 +07:00
Carl Schwan 2f406e5403 More fixes
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-10-18 14:41:13 +07:00
Carl Schwan 8e3f21d9ed Small progress with fixing unit tests
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-10-11 14:00:15 +07:00
Carl Schwan 7ded5a769b
Only normalize data in public shares and not crud
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-09-08 14:51:28 +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 03b1791cca
Fix share attribute related tests + code style
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-07-28 16:53:22 +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
Joas Schilling 50c697dbd4
Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-06-07 20:40:55 +07:00
Cyrille Bollu c6a5c07041 Adds a "Request password" button to the public share authentication page for shares
of type TYPE_EMAIL, when the "video verification" checkbox isn't checked. Users accessing
non-anonymous public shares (TYPE_EMAIL shares) can now request a temporary password themselves.

- Creates a migration step for the files_sharing app to add the 'password_expiration_time'
  attribute to the oc_shares table.
- Makes share temporary passwords' expiration time configurable via a system value.
- Adds a system config value to allow permanent share passwords

-Fixes a typo in a comment in apps/files_sharing/src/components/SharingEntryLink.vue

See https://github.com/nextcloud/server/issues/31005

Signed-off-by: Cyrille Bollu <cyrpub@bollu.be>
2022-04-11 21:58:24 +07:00
Simon L 1ceb6cdb38
Merge pull request #31684 from nextcloud/user-share-permissions-merge
take permissions from multiple paths into account for share permissions
2022-04-05 17:37:46 +07:00
Robin Appelman 278b13155a
take permissions from multiple paths into account for share permissions
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-03-31 16:47:35 +07:00
Louis 47f1ba6ea6
Merge pull request #31240 from nextcloud/Valdnet-patch-3
l10n: Add a dot
2022-03-31 14:57:25 +07:00
Valdnet 806a49aba5
Fix test
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-03-31 11:04:47 +07:00
Louis Chemineau 85a101987d Add test to spelling unification
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-03-21 11:04:04 +07:00
Louis Chemineau da435b1e67 Support CRUD share permissions
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-02-15 11:54:17 +07:00
Joas Schilling d49ad7ea47
Limit more contact searches
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:58:54 +07:00
Arthur Schiwon 27865d03c0
use specific email getter where necessary
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-09 19:23:05 +07:00
szaimen 0c27faf711 Update "Sending password by Nextcloud Talk failed" sentence
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-07 13:39:57 +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
Valdnet 0e39cef0d9
l10n: Unify spelling in test 2021-05-20 09:26:38 +07:00
Valdnet c79aba9865
Change size of the letter in test 2021-04-28 08:57:53 +07:00
Vincent Petry 2650da70ca
Unit tests for federated share expiration date
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-04-15 10:02:03 +07:00