Commit graph

426 commits

Author SHA1 Message Date
Arthur Schiwon
59466b3424
Merge pull request #39233 from nextcloud/backport/39202/stable25
[stable25] use more efficient tag retrieval on DAV report request
2023-07-11 14:22:44 +02:00
Joas Schilling
99ff886d5d
Merge pull request #38973 from nextcloud/backport/38747/stable25
[stable25] perf: skip request without write permission
2023-07-11 07:18:30 +02:00
Daniel Kesselberg
5dfd8f6549 perf: skip request without write permission
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-07-10 18:01:22 +02:00
Arthur Schiwon
2ca8c7102b
fix: PHP 7.4 compatibility
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-10 12:42:30 +02:00
Joas Schilling
446ebd35a9
fix(dav): Abort requests with 429 instead of waiting
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-10 06:35:25 +02:00
Arthur Schiwon
33b9ba5cd9
refactor: adjust to unexposed searchBySystemTag
- in this backport we have to drop the breaking addition in
  \OCP\Files\Folder
- this requires adjustments in check for the existance of the method but
  also in testing
- another change in \OCP\SystemTag\ISystemTagManager can be applied as
  this interface is not implemented elsewhere

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:56:54 +02:00
Arthur Schiwon
6256da1ade
fix: cannot apply limit+offset on multi-tag-search
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:56:10 +02:00
Arthur Schiwon
5cd984b76b
refactor: save unnecessary method_exists
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:56:05 +02:00
Arthur Schiwon
2c162694f2
fix: use array_unitersect against objects
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:56:01 +02:00
Arthur Schiwon
9f549013b0
fix: obey offset and limit for results from favs and circles
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:55:55 +02:00
Arthur Schiwon
1ffae9d110
fix: cominbation of small fixes
- possible null return
- parameter name mismatch in implementation
- incomplete unit test

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:55:50 +02:00
Arthur Schiwon
d21b251a85
fix: include invisible tags for admins
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:55:45 +02:00
Arthur Schiwon
5c0a1a4b09
fix: search with more than one search tags
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:55:31 +02:00
Arthur Schiwon
8d25273192
fix: no search when LazyFolder was provided
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:44:04 +02:00
Arthur Schiwon
2b513e9d12
chore: cleanup unused code
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:43:58 +02:00
Arthur Schiwon
03590e86e7
fix: ensure searchBySystemTag() is available
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:43:52 +02:00
Arthur Schiwon
837fd9f8da
fix: favorites view and universal search against tags
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:43:46 +02:00
Arthur Schiwon
7e2ad76505
use efficient tag retrieval on DAV report request
- uses DAV search approach against valid files joined by systemtag selector
- reduced table join for tag/systemtag search
- supports pagination
- no changes to the output formats or similar

Example request body:

<?xml version="1.0"?>
<oc:filter-files xmlns:d="DAV:" xmlns:oc="http://owncloud.org/ns" xmlns:nc="http://nextcloud.org/ns" xmlns:ocs="http://open-collaboration-services.org/ns">
  <d:prop>
    <d:getcontentlength/>
    <d:getcontenttype/>
    <d:getetag/>
    <d:getlastmodified/>
    <d:resourcetype/>
    <nc:face-detections/>
    <nc:file-metadata-size/>
    <nc:has-preview/>
    <nc:realpath/>
    <oc:favorite/>
    <oc:fileid/>
    <oc:permissions/>
    <nc:nbItems/>
  </d:prop>
  <oc:filter-rules>
    <oc:systemtag>32</oc:systemtag>
  </oc:filter-rules>
  <d:limit>
    <d:nresults>50</d:nresults>
    <nc:firstresult>0</nc:firstresult>
  </d:limit>
</oc:filter-files>

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-07 17:43:34 +02:00
Côme Chilliet
8faf854a03 Make sure to never trigger files hooks on a null path
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-11 14:43:04 +00:00
Julius Härtl
46e924aa7b
fix: Use proper path when creating node instances
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-09 13:00:04 +02:00
Michiel de Jong
57611db80a Add SHARE_TYPE_SCIENCEMESH
Signed-off-by: Michiel de Jong <michiel@unhosted.org>
2023-03-22 15:25:42 +01:00
Richard Steinmetz
f5a6a695cd fix(dav): check if principal has email address before accessing it
Ref https://github.com/nextcloud/calendar/issues/4811

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2023-01-26 13:56:21 +00:00
Louis Chemineau
796c57121d Do not check quota for non Node
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-11-24 15:17:07 +00:00
Côme Chilliet
5369d752d7 Apply the same fix as on beforeCopy on beforeMove
Let’s be safe

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-17 15:01:27 +00:00
Robin Appelman
4e6b51224a fix dirname usage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-11-17 15:01:26 +00:00
Côme Chilliet
512f458ac0 Fix psalm issues
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-17 15:01:26 +00:00
Côme Chilliet
b36de92fde Check quota on file copy
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-17 15:01:26 +00:00
Richard Steinmetz
28b2ba9a69 Fix duplicate event email notifications
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2022-11-04 17:11:32 +00:00
szaimen
c124456881 fix NC25 for 32-bit
Signed-off-by: szaimen <szaimen@e.mail.de>
2022-11-01 13:44:17 +01:00
Dariusz Olszewski
71511ddd37 WebDAV - use file/folder name for dav:displayname
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
2022-10-21 13:49:07 +00:00
Dariusz Olszewski
52a5d0cea6 Review comment - remove redundant empty() call
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
2022-10-14 13:38:39 +00:00
Dariusz Olszewski
6119604f71 Read notes from share already loaded into memory
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
2022-10-14 13:38:39 +00:00
Côme Chilliet
4f3b323fba
Move dav utils functions to OCP\Files\DavUtil
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-30 09:58:12 +02:00
Côme Chilliet
b3cd9b5573
Move Dav fileid and permissions logic into OCP\Util to be able to use it for BulkUpload
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-29 13:55:08 +02:00
Carl Schwan
f8b13ecd60
Merge pull request #32363 from nextcloud/cleanup/remove-long-deprecated-classes
Remove OCP\App and OCP\BackgroundJob
2022-08-08 17:05:11 +02:00
Carl Schwan
458c2fa297
Remove OCP\App and OCP\BackgroundJob
Both deprecated since NC 23

IAppManager is the replacement for OCP\App unfortunately it can't be
dependency injected in classes used by the installed otherwise the
database connection is initialised too early

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-08-01 09:46:40 +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
2ee659e547
Fix view-only code after code review comments
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-07-28 16:53:24 +02:00
Vincent Petry
92e60e3858
Add nc:share-attributes Webdav property
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-07-28 16:53:23 +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
luz paz
d4637ef4d8 Fix typos in apps/dav subdirectory
Found via `codespell -q 3 -S l10n -L jus ./apps/dav`

Signed-off-by: luz paz <luzpaz@github.com>
2022-07-26 17:40:10 -04:00
Carl Schwan
046357ec75 Fix type error in Sabre/Connector/Directory
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-06-14 13:01:06 +02:00
Vincent Petry
804ee11803
Merge pull request #31029 from nextcloud/expose-extra-emails-in-dav
Expose additional emails in {DAV:}alternate-URI-set
2022-06-10 16:56:37 +02:00
Joas Schilling
8e3b30f388
Don't spam the log with fatals when maintenance mode is enabled or an upgrade has to be done
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-06-10 00:36:52 +02:00
Carl Schwan
1b426eda44 Make X-HAS-{MD5/SHA256} opt-in
This is not always needed and slow down the upload

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-06-01 10:59:04 +02:00
Carl Schwan
3ada267a02 Fix return type and make type stricter
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-24 12:05:17 +02:00
Thomas Citharel
190a71ecf9
Expose additional emails in {DAV:}alternate-URI-set
This allows iMip invitations to be send with an alternative email as
"Reply-To" field.

Closes #27201

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-05-17 15:11:36 +02:00
Carl Schwan
f7be76125f Fix more psalm issues
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-16 11:05:54 +02:00
Carl Schwan
829490ab7a Cleanup dav
- Remove unused class AppEnabledPlugin
- Add more type hinting when possible

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-05-05 22:03:59 +02:00
Louis
7ccfddbe64
Merge pull request #31963 from nextcloud/feat/use_setting_in_dav_search
Use share setting in DAV search
2022-05-04 13:38:03 +02:00