Commit graph

836 commits

Author SHA1 Message Date
Christoph Wurst
613798a54b
Merge pull request #28419 from nextcloud/bug/28419/delete-calendar-subscriptions-when-deleting-user
Delete calendar subscriptions as well when deleting user
2021-08-31 08:59:50 +02:00
Thomas Citharel
2a78ea9dc6
Improve PrincipalTest test file
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 19:03:01 +02:00
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
Thomas Citharel
57e2f2a903
Delete calendar subscriptions as well when deleting user
Closes #28418

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-13 14:19:03 +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
J0WI
3b656446af Introduce ISecureRandom::CHAR_ALPHANUMERIC
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2021-07-08 15:11:31 +02:00
Joas Schilling
8ebbd91909
Merge pull request #17148 from nextcloud/always-provide-color-to-default-personal-calendar
Always provide theme color for default personal calendar
2021-07-02 16:29:18 +02:00
Julius Härtl
d1b0ccb715
Merge pull request #27488 from msrn/win10cal-useragent
Add regex to match Windows 10 calendar user-agent
2021-06-29 18:36:51 +02:00
Thomas Citharel
8927205d8a
Make default calendar only contain VEVENTS
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-25 14:26:18 +02:00
Thomas Citharel
f73478654d
Always provide theme color for default personal calendar
Before this calendar-color wasn't defined for default calendar

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-25 14:15:10 +02:00
Mikael Saarinen
14c33bb2e9 Add regex to match Windows 10 calendar user-agent
* Match first part of the Windows 10 calendar user-agent
* Exposes subscribed calendars for Windows 10 calendar
* Update unit test

Signed-off-by: Mikael Saarinen <mikaels@iki.fi>
2021-06-23 09:50:45 +03:00
Lukas Reschke
4627fe4bc1 Reference correct private variable
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-06-22 20:41:38 +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
Christoph Wurst
dfbac05f7b
Merge pull request #26421 from mattian/enh/25771/occ-delete-calendar
OCC command to delete calendars
2021-06-14 10:03:44 +02:00
Mattia Narducci
4850dae1df occ: new command dav:delete-calendar
Add occ command 'dav:delete-calendar' to delete a user's calendar.

Signed-off-by: Mattia Narducci <mattianarducci1@gmail.com>
2021-06-13 23:08:15 +02:00
Morris Jobke
92d19bd79b
Merge pull request #27374 from nextcloud/bugfix/noid/adjust-unit-tests
Bugfix/noid/adjust unit tests
2021-06-07 11:12:22 +02:00
Morris Jobke
e238b93234
Code style fixes
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-06-07 10:31:14 +02:00
John Molakvoæ
b211d02e9c
Merge pull request #27008 from francoisfreitag/no-jq-app-calendar 2021-06-05 12:36:30 +02:00
François Freitag
70edda0342 Port dav calendar settings page to Vue.js
- Drop reliance on deprecated global jQuery object.
- Allow testing user interactions.
- Use newer technology stack.

---

Test user interactions with the groupware dav settings

Add infrastructure to test Vue components:

- Use recommended libraries:

    - https://vuejs.org/v2/guide/testing.html#Recommendations
    - Use jest-dom for robust assertions on the DOM state
    - Use user-event to be more representative of user actions

- Code is transpiled by Jest, with the help of vue-jest.

Ignore test files for no-unpublished-import. Prevent ESLint from
flagging:

```
/home/runner/work/server/server/apps/dav/src/views/CalDavSettings.spec.js
Error:   1:24  error  "@testing-library/vue" is not published         node/no-unpublished-import
Error:   2:23  error  "@testing-library/user-event" is not published  node/no-unpublished-import
```

Signed-off-by: François Freitag <mail@franek.fr>
2021-06-05 11:22:25 +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
Joas Schilling
e1e5026df2
Fix dispatcher handling in CalDavBackendTest
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-06-04 10:57:41 +02:00
Lukas Reschke
446c1c5ade
Merge pull request #27312 from francoisfreitag/tests-at
Rewrite birthday calendar tests without $this->at()
2021-06-01 21:05:37 +02:00
Christoph Wurst
b29c3aa03f
Merge pull request #25658 from nextcloud/dav-respect-disallow-sharing-with-groups
Dav respect disallow sharing with groups
2021-06-01 12:07:29 +02:00
François Freitag
22d35141f8 Rewrite birthday calendar tests without $this->at()
Removes warnings:

```
The at() matcher has been deprecated. It will be removed in PHPUnit 10.
Please refactor your test to not rely on the order in which methods are
invoked.
```

Signed-off-by: François Freitag <mail@franek.fr>
2021-05-31 23:13:15 +02:00
Christoph Wurst
d6d8e9215c
Add a trashbin for calendars and calendar objects
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-31 07:49:19 +02:00
Thomas Citharel
1c0d975654
Make dav respect disallowing sharing with groups
Closes #25390

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-05-26 11:19:59 +02:00
Roeland Jago Douma
749dd1374c Fix CS check
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-05-12 16:01:05 +02:00
Arthur Schiwon
665ffbdf80
remove private AccountManager from SyncService
and fix test

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-05-11 23:38:31 +02:00
Arthur Schiwon
04edd067f4
dav: do not use private AccountManager
- also updates data structure in test

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-05-08 00:18:17 +02:00
Christoph Wurst
cebe951b8e
Remove the untyped calendar update event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 17:09:37 +02:00
Christoph Wurst
884e34b12a
Remove the untyped calendar create event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 16:58:33 +02:00
Christoph Wurst
f5462650f1
Clean up reminder actions and call methods directly
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 12:13:47 +02:00
Christoph Wurst
257613e6ef
Remove the \OCA\DAV\CalDAV\CalDavBackend::createCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 12:13:45 +02:00
Christoph Wurst
f808267949
Remove the \OCA\DAV\CalDAV\CalDavBackend::updateCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 12:10:58 +02:00
Christoph Wurst
d512a5629e
Remove the \OCA\DAV\CalDAV\CalDavBackend::deleteCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 10:53:45 +02:00
Valdnet
4df8fec0c3
Fix test
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-05-04 11:38:45 +02:00
Arthur Schiwon
a9f39aab29
fix creating vcards with multiple string values
Internally it is valid to provide multiple values for a property as
plain string. An exampe is given in the PhpDoc of
AddressBookImpl::search().

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-04-30 21:36:05 +02:00
Christoph Wurst
63eb3694e4
Exclusively use the typed calendar deletion events for DAV
We had both in places, but the old one isn't used anywhere outside this
app, so it's time to migrate the code.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-04-29 15:31:19 +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
Joas Schilling
379664974c
Fix DAV unit tests
6) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testAccept
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

7) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testAcceptSequence
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

8) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testAcceptRecurrenceId
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

9) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testAcceptTokenNotFound
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

10) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testAcceptExpiredToken
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

11) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testDecline
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

12) OCA\DAV\Tests\Unit\DAV\Controller\InvitationResponseControllerTest::testProcessMoreOptionsResult
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

13) OCA\DAV\Tests\unit\CalDAV\CalendarTest::testConfidentialClassification with data set #0 (3, false)
No method rule is set

14) OCA\DAV\Tests\unit\DAV\Migration\RefreshWebcalJobRegistrarTest::testRun
Trying to configure method "fetch" which cannot be configured because it does not exist, has not been specified, is final, or is static

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-20 17:30:21 +02:00
Vincent Petry
278a73789e
Map old account scope properties to new names
Use new scope values in settings page.
Adjust all consumers to use the new constants.
Map old scope values to new ones in account property getter.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:08 +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
ee7702e5f0 Move DirectMapper to QBMapper
Mapper has been deprecated for some time now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 12:35:14 +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
d2569eed58 Fix PluginManager annotation
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-02-14 12:46:50 +01:00
Robin Appelman
f824f273b6
add event for when a direct download is triggered
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-02-12 17:33:12 +01:00
Christoph Wurst
9430de181e
Do not send imip email to invalid recipients
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 15:13:05 +01:00
Christoph Wurst
5366ef34bd
Parse calendar object for attendees and emit interaction events
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-03 18:04:28 +01:00
Thomas Citharel
105be299b9
[CalDAV] Validate notified emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-25 10:10:13 +01:00
Thomas Citharel
536e157d74
Dismiss reminder notifications from passed events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-14 10:42:47 +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
Christoph Wurst
820f9f4f63
Merge pull request #24629 from nextcloud/enh/noid/optional-before-required
Make $vars and $secureRandom required.
2020-12-16 12:43:06 +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
John Molakvoæ (skjnldsv)
45b3ddd882
Add tel, note, org and title search
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-12-14 16:45:17 +01:00
Daniel Kesselberg
9558734d07
Add $secureRandom to test case
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-12-10 17:06:37 +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
Joas Schilling
86a3b7e7bf
Merge pull request #24486 from nextcloud/feature/noid/phone-number-validation
Phone number validation and search
2020-12-08 17:05:38 +01:00
Roeland Jago Douma
6a7e849090
php cs fix
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Roeland Jago Douma
b98fbcb774
We can no longe mock multiple interfaces
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Roeland Jago Douma
673beefb41
Fix MoveCalendarTest
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:04 +01:00
Roeland Jago Douma
7f0b2738bf
Fix notifier test
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-12-07 15:44:03 +01:00
Joas Schilling
da9462b482
Make code strict
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 14:19:37 +01:00
Roeland Jago Douma
6166e1a157
Use proper OCP\BackgroundJobs\Job
And typehunt the IJobList

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-11-25 15:03:06 +01:00
Morris Jobke
0c7bed26e8
Merge pull request #23915 from st3iny/fix/noid/png-icons-in-caldav-reminder-emails
Use png icons in caldav reminder emails
2020-11-11 12:45:23 +01:00
Joas Schilling
609c8a9cf8
Fix "Invalid fetch style: 12" on Oracle
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:35:14 +01:00
Morris Jobke
f23c2162ad
Merge pull request #23993 from nextcloud/bugfix/noid/close-cursors
Don't leave cursors open
2020-11-10 15:15:03 +01:00
Joas Schilling
8027dcbc6f
Don't leave cursors open when tests fail
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-09 12:28:17 +01:00
Richard Steinmetz
f1c242c71d
Use png icons in caldav reminder emails
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2020-11-07 14:09:22 +01:00
leith abdulla
a40a307b65 handle vcalander documents with recurrence with exemptions or edits
when importing ics files from third party services (ex: google), long
running recurrence vcalander objects can contain numerous vevents
relating to past exemptions or edits.

these objects are handled incorrectly, leading to incorrect first and/or
last occurence dates from being inferred. as a result, a number of
imported events are not rendered in the calendar.

this PR makes use of EventIterator's constructor that takes in an array
of VEVENTS to properly handle these complex cases.

Also of note is that other parameter signatures of EventIterator's constructor,
will be deprecated, according to comments in sabre dav EventIterator.php

Signed-off-by: leith abdulla <online-nextcloud@eleith.com>
2020-10-28 21:07:00 -07:00
call-me-matt
1b2386d108
handle nested properties, fixes #20544
Signed-off-by: call-me-matt <nextcloud@matthiasheinisch.de>
2020-10-12 21:27:38 +02:00
Joas Schilling
51fbcb0801
Use PSR Logger in event dispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-10-08 16:52:56 +02: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
Roeland Jago Douma
a1faee8a1e
Fix unit tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-05 15:49:00 +02:00
eleith
aa956ab46e broaden exception handling on webcal refresh
when iterating through a calendar, recurrance events can throw an
exception if no instances of the recurrance are found.

this exception is of class `Exception` but the try/catch clause in the
webcal refresh loop only catches `BadRequest` exception.

this leads to the exception bubbling up and thus other calendar events
do not get processed by the event iterator.

this PR broadens the exception to handle both BadRequest and
NoInstanceFoundException so that the full webcal can be processed, even
if minor hiccups are processing on vobject

Signed-off-by: leith abdulla <online-nextcloud@eleith.com>
2020-09-29 20:47:38 -07: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
Jacob Neplokh
e8a4feb1c6
Change Content-Disposition Header
- Make ALLOWED_CONTENT_TYPES public in order to use
- Add $fileName variable which uses "$node->getName()" to get the proper file name and "$file->getMimeType()" along with the ALLOWED_CONTENT_TYPES array in PhotoCache.php to get the proper file extension
- Make "$fileName" the name of the file in the Content-Disposition header when downloading a Contact's photo
- Add filename to the CardDAV integration image export test header
- Change headers in ImageExportPluginTest to reflect changes

Signed-off-by: Jacob Neplokh <me@jacobneplokh.com>
2020-09-05 11:46:25 -07:00
John Molakvoæ
593d64d935
Merge pull request #17456 from brad2014/feature/brad2014/12391-improve-imip-mail-message-take-2 2020-09-04 19:53:02 +02:00
Brad Rubenstein
442af8c5d5 Minor cleanup: php-cs-fixer, tests, interface consistency
IMipPlugin.php Removed blank lines to make php-cs-fixer happy.
Minor cleanup:  bugs found by Psalm static checker
IEMailTemplate: The public interface to addBodyListItem also needs to include the new plainIndent parameter.
IMipPlugin: Fixes an undefined variable for events that do not have DTEND.  Also use explicit string conversion for parameters and properties in several places.

The new email template adds an additional blank line before "button" links in plain text, so the tests were fixed to include that additional blank line.

Signed-off-by: Brad Rubenstein <brad@wbr.tech>
2020-09-02 17:54:36 +02:00
Robin Appelman
06ae93b270
fix tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-08-26 15:46: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
Georg Ehrke
67f1ef4658
Add Typed Events for CalDAV- and CardDAV-related Events
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-18 21:40:57 +02:00
Georg Ehrke
14755d85d6
Add ability to limit sharing to owner
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-18 13:18:00 +02:00
Morris Jobke
e9f5c7f649
Merge pull request #22128 from nextcloud/bugfix/noid/cleanup-chunks-on-failure
Delete chunks if the move on an upload failed
2020-08-13 20:47:08 +02:00
Julius Härtl
6722246aca
Return proper status when file didn't exist before
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-08-13 15:26:42 +02:00
Morris Jobke
234b510652
Change PHPDoc type hint from PHPUnit_Framework_MockObject_MockObject to \PHPUnit\Framework\MockObject\MockObject
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-12 13:55:19 +02:00
Julius Härtl
cda5cfc01e
Adjust chunking test for non-existing target node
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-08-12 08:18:46 +02:00
John Molakvoæ (skjnldsv)
d2c0569b49
Fix search providers order and IDs
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-08-05 17:57:17 +02:00
John Molakvoæ
a4d511d827
Merge pull request #22099 from nextcloud/fix/unified-search 2020-08-05 14:17:42 +02:00
Georg Ehrke
b0c5457c42
IAddressBook: add isShared and isSystemAddressBook
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-05 09:04:41 +02:00
John Molakvoæ (skjnldsv)
71b62c4203
Show mime icon, bump bundles, make the SearchResultEntry class non-abstract, Fix header search icon, various fixes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-08-04 21:36:22 +02:00
Georg Ehrke
900617e7d7
Add Event and Task Backends for Unified Search
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-04 16:01:59 +02:00
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