Commit graph

784 commits

Author SHA1 Message Date
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
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