Commit graph

338 commits

Author SHA1 Message Date
Thomas Citharel
a7b9b398a3
Expose user language through DAV
Introduces the '{http://nextcloud.com/ns}language' prop that gives the
user's language

Closes #28449

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 19:03:00 +02:00
Julius Härtl
6909ce6641
Make sure that the dav propfind plugins always use the proper user id
For old android versions it could happen that the requests are performed
with a login name instead of the actual user id, so before this change
the property methods used the wrong value for fetching their information

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-22 12:28:00 +02:00
Lukas Reschke
d6a2f00bef Throttle on public DAV endpoint
We should throttle whenever an invalid request is sent to the public WebDAV endpoint.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-06-22 19:54:13 +02:00
acsfer
ae77289511
Header must contain a colon 2021-06-09 16:20:55 +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
Maxence Lange
11ad88e987 migration to Circles 22
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2021-05-29 10:04:26 -01:00
Valdnet
48d12b6441
l10n: Spelling unification
Spelling unification in Transifex.

Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-05-04 09:38:46 +02:00
Christoph Wurst
1722044992
Only set copy etag if the destination source can be found
The etag is only set for files, but it's also possible that in edge
cases the copy destination node can't be found. In that case we don't
need to set any etag.

Required for #26083

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-04-23 10:53:24 +02:00
Christoph Wurst
8152189b09 Only write checksum if we have a valid file info
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-03-22 21:11:07 +01:00
Joas Schilling
5b53b6f977
Add a setting to restrict returning a full match unless in phonebook or same group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:25:57 +01:00
Joas Schilling
236aa194e2
Restrict autocompletion also based on the phonebook known users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:19:55 +01:00
Roeland Jago Douma
c40228a65a Fix the SharesPlugin
Another attempt to fix all the typing and handling in the sharesplugin.
In short we should probably have a lot more type hinting in several
places.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-02 16:29:06 +01:00
dependabot-preview[bot]
eb502c02ff
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 0.3.0 to 0.5.0.
- [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/v0.3.0...v0.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +01:00
Roeland Jago Douma
98c8cd5089
Merge pull request #25383 from nextcloud/bugfix/24893
Properly handle SMB ACL blocking scanning a directory
2021-01-29 15:52:14 +01:00
Christoph Wurst
65b6b45976
Merge pull request #25218 from nextcloud/fix/25213/do-no-remove-vali-dav-group-shares
do not remove valid group shares
2021-01-29 11:36:28 +01:00
Julius Härtl
e9ae943bba
Properly handle SMB ACL blocking scanning a directory
This makes sure that a possible ForbiddenException is properly passed
through the storage as a ForbiddenException and can be catched when
trying to fetch the quota info of a parent folder

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-29 11:26:22 +01:00
Vincent Petry
65da8bd76e
Catch NotFoundException when querying quota
Fixes parent folder that becomes inaccessible when it contains a
non-existing / broken entry because the quota check made the PROPFIND
on parent fail altogether.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-01-25 12:12:50 +01:00
Robin Appelman
168978c02e
also use storage copy when dav copying directories
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-21 17:59:28 +01:00
Arthur Schiwon
fcade3dda3
do not remove valid group shares
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-19 22:58:35 +01:00
Christoph Wurst
73c7d0dc81
Bump icewind/streams from 0.7.1 to 0.7.2
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-29 09:07:36 +01: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
Arthur Schiwon
d8ad4ef6b5
use a consistent default value for sharing.maxAutocompleteResults
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 11:53:39 +01:00
Arthur Schiwon
2b017b704a
dav search to honour sharing.maxAutocompleteResults setting
- it is being used on frontend by users
- user and big instances benefit from quicker results and less load

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 11:53:39 +01:00
Julius Härtl
bac1651380
Handle deck share type in audit and dav app
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 13:20:23 +01:00
Morris Jobke
fc57f60ece
Merge pull request #24358 from nextcloud/dav-storage-copy
use storage copy implementation when doing dav copy
2020-12-03 15:03:13 +01:00
Daniel Kesselberg
35098a9973
A valid user session is required for circles.
The circles app depends on a valid userId. A public shared calender might be viewed by guests without a user session. For such requests the principal is null.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-11-26 09:00:09 +01:00
Daniel Kesselberg
efef6e9b78
Update phpdoc for circleToPrincipal
as the QueryException is already catched inside circleToPrincipal.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-11-26 09:00:04 +01:00
Robin Appelman
5ca0de2dee
use storage copy implementation when doing dav copy
instead of using the sabredav fallback (which does a read+write stream copy)

this greatly speeds up dav copies

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-24 18:42:05 +01:00
Roeland Jago Douma
8bd39fccf4
Have the CommentsPropertiesPlugin use the new fancy method
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-04 16:37:42 +01:00
Christoph Wurst
d9015a8c94
Format code to a single space around binary operators
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-05 20:25:24 +02:00
Joas Schilling
6db5f53bc6
Fix numeric folders throwing on markDirty
TypeError: strpos() expects parameter 1 to be string, int given

The problem is that in cacheNode() we strip of any slashes, so
a folder "0/" will be trimmed to "0" and be used as an array key.
Since PHP automatically casts numeric array keys to integers,
you afterwards get $nodePath as int(0). Since it's now a number,
the strpos() function does not accept it anymore. Simply casting
$nodePath to a string again in the foreach solves the issue

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-09-24 15:02:30 +02:00
Morris Jobke
c1ff011990
Merge pull request #22799 from nextcloud/bugfix/noid/dont-log-microsoft-webdav-client-trying-to-tag
Don't log Microsoft WebDAV client trying to tag things
2020-09-14 14:43:54 +02:00
Joas Schilling
2dbd6424f7
Don't log Microsoft WebDAV client trying to tag things
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-09-11 11:52:05 +02:00
Georg Ehrke
b5204a78cc
Mitigate encoding issue with user principal uri
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-09-10 16:00:03 +02:00
Julius Härtl
1dddf6adc7
Properly catch exception from writing to stream when copying a file
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-09-10 09:03:53 +02:00
Christoph Wurst
1f7f93a695
Update license headers for Nextcloud 20 (again)
There are still lots of outdated headers, so time for another round of
updates.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-09-07 14:37:44 +02:00
Julius Härtl
4cf29e598d
Do not keep the part file if the forbidden exception has retry set to false
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-09-03 11:00:24 +02: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
Daniel Kesselberg
6f8147b18f
Fix some MissingDocblockType or InvalidDocblock warnings.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-08-14 15:10:48 +02:00
Roeland Jago Douma
68f1283691
Do not log RequestedRangeNotSatisfiable exceptions in DAV
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-07-14 20:46:33 +02:00
Morris Jobke
e878c0a054
Merge pull request #21074 from jvsalo/shared-lock-multi-release
Fix releasing a shared lock multiple times
2020-07-06 14:06:41 +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
Roeland Jago Douma
7b6b946470
Allow for compression of the PROPFIND responses
For now it just gzip and only for propfind (the 99% case). Already saves
a bunch since the propfinds compress so nicely.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-06-06 15:55:04 +02:00
Jaakko Salo
6886b46ee2 In LockPlugin, only release a lock if it was acquired
When uploading new files, getNodeForPath() will not succeed
yet so the lock cannot be acquired.

In that case, don't try to unlock it either.

Signed-off-by: Jaakko Salo <jaakkos@gmail.com>
2020-05-24 20:26:38 +03:00
Morris Jobke
ecbc009e2f
Translate the maintenance mode message in webdav
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-05-06 18:11:54 +02:00
Roeland Jago Douma
b8b53a2d9a
Merge pull request #19436 from nextcloud/bugfix/noid/dav-quota-calculation
Do not include mountpoints when calculating quota usage on WebDAV
2020-04-30 09:13:19 +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
Julius Härtl
902d12555e
Do not include mountpoints when calculating quota usage on WebDAV
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-24 18:15:43 +02:00
Julius Härtl
d7161b4eee
Only catch anonymous OPTIONS for Office
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-24 14:46:07 +02:00