Commit Graph

716 Commits

Author SHA1 Message Date
Georg Ehrke 5fb2562332
Implement Contacts Backend for Unified Search
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-03 16:29:01 +02:00
Morris Jobke 7e6c0ec284
Use assertEqualsCanonicalizing instead of deprecated assertEquals parameter
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-23 17:11:29 +02:00
Morris Jobke 0123cd0ae3
Use assertStringContainsString instead of assertContains on strings
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-23 17:11:29 +02:00
Morris Jobke aab646a9d0
Update system addressbook card only when there was a change based on a cached etag
Due to our old and new hook system the card dav backend listens to old and new hooks. This triggers this code multiple times and always causes an update. With this change we cache the etag during a request and only trigger the update if the etag has changed. This does not catches all not needed updates, but it does not need another round trip to the database and still covers most cases where multiple attributes are updated during one single request.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-09 11:43:58 +02:00
Morris Jobke 08bfd63406
Merge pull request #21704 from nextcloud/fix/18895/fix-unit-tests
Fix unit tests from #18895
2020-07-06 14:10:17 +02:00
Morris Jobke db782fefa1
Merge pull request #21222 from nextcloud/bugfix/18965/reduce-contacts-search-load
Reduce contacts search load
2020-07-06 13:56:06 +02:00
Morris Jobke 2b6cadbcd9
Fix unit tests from #18895
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-06 13:32:42 +02:00
Joas Schilling db8267db26
Use the new method everywhere
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-07-03 10:59:43 +02:00
Joas Schilling a2f34f46b2
Fix tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 18:13:37 +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 00e7b2b956
Reduce load of the contacts search when we know it can't match
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-15 08:47:30 +02:00
Joas Schilling fdd8c86c60
Fix pagination of contacts search
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-10 09:38:59 +02:00
Christoph Wurst d0d6cb6ea6
Merge pull request #21302 from nextcloud/techdebt/noid/adjust-to-parent-implementation
Adjust to parent implementation
2020-06-09 08:52:40 +02:00
Joas Schilling 03c05d60c0
Adjust to parent implementation
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-08 11:30:05 +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
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
Roeland Jago Douma a1f3293c06
Merge pull request #19039 from nextcloud/dav-activity-provide-links-to-calendar
Provide links to calendar in event creation/update activities
2020-04-30 09:10:56 +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
Morris Jobke 3c5c4caa4d
Merge pull request #20632 from nextcloud/bugfix/20624
Only catch anonymous OPTIONS for Office
2020-04-27 10:38:32 +02:00
Thomas Citharel deb2ea9cea
Provide links to calendar in event creation/update activities
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-26 11:11:50 +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
Daniel Kesselberg 0e925285b7
Add test that shares and tags are ignored for chunk files.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-04-21 14:00:52 +02:00
Roeland Jago Douma ed56619a20
Merge pull request #19901 from nextcloud/bugfix/noid/vcard-photo-handling
Improved vcard photo handling
2020-04-17 11:43:20 +02:00
John Molakvoæ (skjnldsv) 29541322c1
Update list of multiple properties
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-04-17 09:38:47 +02:00
Joas Schilling bb754cb363
Always transform the etag and read the data
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-15 15:49:36 +02:00
Joas Schilling fd0c1a3bb2
Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-15 08:06:51 +02:00
Daniel Kesselberg 91ab811824
Verify that destination is not a directory.
Otherwise file_put_contents will fail later.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-04-14 12:52:12 +02:00
Thomas Citharel ebdf66b706
Provide dav setting for user's default calendar
And add tests to handle schedule-default-calendar-URL

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-13 15:07:42 +02:00
Christoph Wurst 734c62bee0
Format code according to PSR2
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:56:50 +02:00
Christoph Wurst 28f8eb5dba
Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +02:00
Christoph Wurst 1584c9ae9c
Add visibility to all methods and position of static keyword
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:51:06 +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 14c996d982
Use elseif instead of else if
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +02:00
Christoph Wurst 008e6d7e84
Merge pull request #20391 from nextcloud/refactor/spaces-cleanup
Remove all extra whitespace PSR2 does not like
2020-04-09 20:39:37 +02:00
Christoph Wurst 64510932b8
Merge pull request #20384 from nextcloud/techdebt/lowercase-keywords
Use php keywords in lowercase
2020-04-09 16:25:14 +02:00
Christoph Wurst 44577e4345
Remove trailing and in between spaces
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:07:47 +02:00
Christoph Wurst 42625a46be
Remove spaces after method or function call
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:05:56 +02:00
Christoph Wurst 36b3bc8148
Use php keywords in lowercase
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 14:04: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 41b5e5923a
Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +02:00
Christoph Wurst 2fbad1ed72
Fix (array) indent style to always use one tab
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 10:16:08 +02:00
Christoph Wurst 85e369cddb
Fix multiline comments
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-08 22:24:54 +02:00
Thomas Citharel 058ffa37ff
Add default titles for titleless events in invitations
Closes #19662

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-03 13:49:25 +02:00
Joas Schilling bc6a5ef5c4
Merge pull request #19890 from nextcloud/enh/comments-reference-id
Add optional comments reference_id
2020-04-02 11:34:21 +02:00
Joas Schilling 81455479bc
Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-02 09:59:44 +02:00
Christoph Wurst 1a9330cd69
Update the license headers for Nextcloud 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Roeland Jago Douma 2200cc8562
Merge pull request #19325 from nextcloud/dependachristoph/composer/sabre-4.0
Update Sabre (and friends) to 4.0
2020-03-30 09:34:25 +02:00
Christoph Wurst 463b388589
Merge pull request #20170 from nextcloud/techdebt/remove-unused-imports
Remove unused imports
2020-03-27 17:14:08 +01:00
Georg Ehrke 55081b7fd2
RequestTestCase: Default type for headers needs to be array
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-27 12:53:44 +01:00
Georg Ehrke 80b7ef9b41
Adjust FakeLockerPluginTest to new Sabre version
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-27 12:53:44 +01:00
Georg Ehrke 5e2c802bb7
Set custom ProdId in Birthday service, do not depend on Sabre Versio number for unit tests
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-27 12:53:44 +01:00
Georg Ehrke 102a328e65
Fix usage of Sabre\HTTP\Request in unit tests
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-27 12:53:44 +01:00
Georg Ehrke 52ba75f644
Sabre/DAV 4.0: beforeMethod is now beforeMethod:*
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-27 12:53:44 +01:00
Christoph Wurst b80ebc9674
Use the short array syntax, everywhere
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-26 16:34:56 +01:00
Christoph Wurst 2ee65f177e
Use the shorter phpunit syntax for mocked return values
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:21:27 +01:00
Christoph Wurst 74936c49ea
Remove unused imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +01:00
Roeland Jago Douma 3427653676
Merge pull request #19986 from nextcloud/bugfix/19980/fix_uid_as_uri
RefreshWebcalService: randomly generate calendar-object uri
2020-03-25 08:11:49 +01:00
Christoph Wurst 3e338c9075
Merge pull request #18788 from nextcloud/fix/18782/translate-busy-in-caldav
Translate 'Busy' in CalDAV
2020-03-24 15:12:21 +01:00
Thomas Citharel 01db6d4609
Add extra test case to exclude by timerange
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-22 14:24:13 +01:00
dartcafe b0fbba05f2
Added test testSearch
Signed-off-by: dartcafe <github@dartcafe.de>
2020-03-22 14:24:13 +01:00
Julius Härtl 47271e56ee Fix tests due to config adjustments
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-20 10:46:13 +01:00
Julius Härtl 0fa897fcfc Limit enumeration in principal search
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-20 10:43:56 +01:00
Robin Appelman 861c897e93
fix tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Robin Appelman 15a21ee19a
remove the detour trough node and work with path directly
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Robin Appelman 451c8761a7
use INode instead of Node for custom properties
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Robin Appelman 7819a904d7
handle long property paths to hasing paths >250 chars
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Robin Appelman e178718e74
test custom properties backend against real database
test behaviour not implementation

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Robin Appelman ce398cf7bd
merge the two almost identical custom property backends
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-18 13:41:04 +01:00
Georg Ehrke bd1f98cba3
RefreshWebcalService: randomly generate calendar-object uri
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-03-16 15:36:13 +01:00
Nils Wittenbrink fc06b24838 Fix test
Signed-off-by: Nils Wittenbrink <nilswittenbrink@web.de>
2020-02-29 19:34:02 +01:00
Joas Schilling e6206731c7
Merge pull request #19252 from nextcloud/bug/fix-notification-object-id
Hash event UID to make sure it's not too long for PushProvider notifications
2020-02-25 17:04:25 +01:00
Roeland Jago Douma 713d3d49ad
Merge pull request #19196 from nextcloud/feature/17126/allow_apps_to_register_their_own_calendars
Allow apps to provide Calendars in user's calendarHome
2020-02-23 17:00:03 +01:00
Gary Kim 709e7447ed
Translate 'Busy' in CalDAV
Signed-off-by: Gary Kim <gary@garykim.dev>
2020-02-23 22:38:24 +08:00
Thomas Citharel 354e8c1f2b
Introduce a default refresh rate app setting for calendar subscriptions
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-21 12:49:37 +01:00
Georg Ehrke b46e5cb270
Allow apps to provide Calendars in user's calendarHome
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-02-18 14:35:14 +01:00
Thomas Citharel 8b22b9f046
Move RefreshWebcalJob logic to a proper service so that it may be called
independently

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-10 16:04:38 +01:00
Julius Härtl 8fba05db96
Check for empty authorization headers for office requests and allow anonymous option on the whole tree
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-02-04 15:35:23 +01:00
Thomas Citharel 41fa057285
Hash event UID to make sure it's not too long for PushProvider
notifications

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-01 18:13:51 +01:00
Georg Ehrke 98edf44c66
RefreshWebcalJob: Fix reading subscription from database leading to ignored refreshRate
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-01-30 13:04:42 +01:00
Christoph Wurst 1b46621cd3
Update license headers for 18
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-20 09:23:25 +01:00
Roeland Jago Douma 8d7baaff74
Merge pull request #18061 from nextcloud/bugfix/noid/dav-plugin-old
Load apps dav plugins on the old webdav route
2019-12-16 13:38:38 +01:00
Georg Ehrke 27a31cdaf1
Support more IPv6 addresses in the RefreshWebcalJob
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-12-12 10:05:36 +01:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Roeland Jago Douma 63cb31542d
Merge pull request #17941 from nextcloud/search-by-owner
Allow filtering the search results to the users home storage
2019-12-05 11:04:33 +01:00
Julius Härtl 1593322397
Load apps dav plugins on the old webdav route
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-12-04 19:04:29 +01:00
Robin Appelman c62637da8b
Allow filtering the search results to the users home storage
This is done by adding a

```xml
<d:eq>
    <d:prop>
        <oc:owner-id/>
    </d:prop>
    <d:literal>$userId</d:literal>
</d:eq>
```

clause to the search query.

Searching by `owner-id` can only be done with the current user id
and the comparison can not be inside a `<d:not>` or `<d:or>` statement

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-12-03 13:49:37 +01:00
Georg Ehrke c3748cfee3
respect shareapi_allow_share_dialog_user_enumeration in Principal backend for Sabre/DAV
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-12-03 09:44:07 +01:00
Georg Ehrke 6d39c6cb50
Set common-name to user's displayname if none is set
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-11-29 07:48:30 +01:00
Roeland Jago Douma 3a7cf40aaa
Mode to modern phpunit
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 15:27:18 +01:00
Roeland Jago Douma 8d4346d656
Fix more tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:42 +01:00
Roeland Jago Douma 9463e2cf61
Fix SynserviceTest
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:42 +01:00
Roeland Jago Douma a5b8473aa5
Fix fileplugintest
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:42 +01:00
Roeland Jago Douma ef4b59d341
More fixes
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:42 +01:00
Roeland Jago Douma c007ca624f
Make phpunit8 compatible
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:41 +01:00
Roeland Jago Douma 68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
Robin Appelman 2e97e8bf84
re-acquired expired shared locks on large file uploads
during large file uploads, the shared lock that we get at the begining can expire
leading to locked errors later on, instead of erroring, try to re-get the lock

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-11-13 14:54:22 +01:00
Arthur Schiwon e8095cf737
use OCP\EventDispatcher\Event over Symfony's deprecated Event
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-10-17 13:31:48 +02:00
Georg Ehrke 88f6d1c20e
Make push notifications for calendar reminders opt-in
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-09-02 15:18:43 +02:00