Commit Graph

1207 Commits (e2ea6d46802255cd1dcdedf0c0d5aeabdcaf283d)

Author SHA1 Message Date
Robin Appelman 192d1769e0 test: don't reuse the query builder for multiple tables in CardDavBackendTest
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-02 17:21:47 +07:00
SebastianKrupinski a56d0dbf4b fix(caldav): fixed initial sync and double processing
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-08-01 13:20:47 +07:00
SebastianKrupinski fc0b694d37 feat: mail provider backend
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-23 16:20:36 +07:00
Richard Steinmetz cbea787233
fix(caldav): stricter default calendar checks
Reject calendars that
- are subscriptions
- are not writable
- are shared with a user
- are deleted
- don't support VEVENTs

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-07-22 15:24:39 +07:00
skjnldsv f28d933acc feat(files_sharing): add public name prompt for files requests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-18 20:15:39 +07:00
SebastianKrupinski 43ee948890 feat: Improve recurrence invitations messages
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-17 19:10:32 +07:00
Richard Steinmetz 718ef5dea5
Merge pull request #46510 from nextcloud/feat/info-xml-backends
feat: hide caldav server settings if no app uses the caldav backend
2024-07-17 18:57:08 +07:00
Ferdinand Thiessen 322b3946d9
fix(dav): Verify target path in `setName` instead of source path
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-16 12:57:11 +07:00
Ferdinand Thiessen 69341e4306
refactor: Migrate filename validation logic from `Storage` to `FilenameValidator`
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-16 12:49:09 +07:00
Richard Steinmetz e42bceac9f
feat: hide caldav server settings if no app uses the caldav backend
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-07-16 09:18:33 +07:00
SebastianKrupinski 247fbb5538 fix(caldav): limit vevent size
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-04 18:56:27 +07:00
SebastianKrupinski cb6c091e08 fix(carddav): limit vcard size
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-04 16:42:09 +07:00
SebastianKrupinski d7eb509b26 fix(caldav): when message is a reply compare the message sender not the recipient
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-25 16:43:51 +07:00
Daniel 952271929d
Merge pull request #46002 from nextcloud/debt/noid/use-new-http-client
Use guzzle for addressbook federation
2024-06-25 21:10:12 +07:00
Richard Steinmetz 6121325310
Merge pull request #45532 from nextcloud/feat/publish-resources-room-update
feat: implement public OCP api to update resources and rooms
2024-06-25 16:48:30 +07:00
Joas Schilling ad2fa3724d
Merge pull request #46095 from nextcloud/techdebt/44770/migrate-server-notifier-to-new-exceptions
feat(notifications): Migrate server INotifiers to new exceptions
2024-06-25 16:09:38 +07:00
Daniel Kesselberg 1fa37ed2dc refactor(dav): migrate to new http client
The request method is available since 29 and thus we can finally use the modern http client to send the report request for the addressbook sync.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-25 12:24:47 +07:00
Joas Schilling 8130968a35
feat(notifications): Migrate server INotifiers to new exceptions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-25 11:56:24 +07:00
Joas Schilling 2c977d2b6e
fix(userstatus): Fix user status automation in real-life scenario
Order of applying:
- Out-of-office
- Availability
- Call
- Meeting
- User status

Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-25 09:29:35 +07:00
Julius Härtl 637a91e767
Merge pull request #45973 from nextcloud/remove-chunking-v1
chore: remove chunking-v1
2024-06-24 09:52:18 +07:00
Richard Steinmetz efe3244acf
Merge pull request #45999 from nextcloud/fix/caldav/shared-calendars-activity-umlauts
fix(caldav): encode calendar URIs with umlauts for activities
2024-06-20 15:44:34 +07:00
Richard Steinmetz df28c04a8f
fix(caldav): encode calendar URIs with umlauts for activities
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-20 10:56:27 +07:00
Robin Appelman 957a00b9de chore: remove chunking-v1
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-19 16:57:42 +07:00
Ferdinand Thiessen 67a0e01382
fix(dav): Try basic auth for ajax WebDAV requests
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-18 10:47:11 +07:00
skjnldsv 4a77fe3530 fix(dav): also return shared-with-me shares data
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-06-12 10:27:29 +07:00
Richard Steinmetz 3a975d0a89
fix(caldav): event links in shared calendar notifications
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-11 20:08:57 +07:00
Jake Nabasny f863290572
feat(ldap): sync additional properties to profile and SAB
Synced from LDAP to profile:
- Date of birth

Synced from LDAP to SAB (via the profile):
- Biography
- Date of birth

Original code by Jake Nabasny (GitHub: @slapcat)

Co-authored-by: Jake Nabasny <jake@nabasny.com>
Co-authored-by: Richard Steinmetz <richard@steinmetz.cloud>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-05-30 12:01:13 +07:00
Daniel 7f44b9d9d0
Merge pull request #45222 from nextcloud/bug/noid/caldav-search-limit-and-timerange
CalDAV fix search with limit and time range
2024-05-29 16:30:11 +07:00
Andy Scherzinger 5b7dcc1427
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-29 08:58:16 +07:00
Daniel Kesselberg b769dc4304 feat(caldav): order the calendar objects by start date for search
Sorting the events by the start date leads to more predictable results for the search API consumers.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-28 19:56:36 +07:00
Daniel Kesselberg 4718a7e4e0 fix(caldav): event search with limit and timerange
Event recurrences are evaluated at runtime because the database only knows the first and last occurrence.

Given, a user created 8 events with a yearly reoccurrence and two for events tomorrow.
The upcoming event widget asks the CalDAV backend for 7 events within the next 14 days.

If limit 7 is applied to the SQL query, we find the 7 events with a yearly reoccurrence and discard the events after evaluating the reoccurrence rules because they are not due within the next 14 days and end up with an empty result even if there are two events to show.

The workaround for search requests with a limit and time range is asking for more row than requested and retrying if we have not reached the limit.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-28 19:56:36 +07:00
Andy Scherzinger ddb840c36b
Merge pull request #45549 from nextcloud/chore/noid/spdx-batch7
Add SPDX header - batch 7
2024-05-28 17:11:57 +07:00
Andy Scherzinger 56d4f3aa2d
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-28 14:41:28 +07:00
Richard Steinmetz 69e0158030
feat: implement public OCP api to update resources and rooms
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-05-27 18:45:52 +07:00
Hamza Mahjoubi fe780945e2 fix(dav): Rate limit address book creation
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-05-27 14:55:07 +07:00
Daniel Kesselberg e210043ee9
feat(caldav): expose calendar subscriptions
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-07 16:03:33 +07:00
Sebastian Krupinski c17fcc4881
Merge pull request #45098 from nextcloud/fix/issue-45081
Do not load IMipPlugin before user session is initialized also use userSession instead of userId in constructor.
2024-05-04 09:36:37 +07:00
Ferdinand Thiessen f82c5f0146
fix(tests): Replace deprecated methods in `FileTest`
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-02 20:56:09 +07:00
SebastianKrupinski 2088b492bf fix(caldav): Fixed phpUnit to use userSession instead of userId and userManager
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-05-02 11:50:27 +07:00
Daniel c0d21b4443
Merge pull request #44511 from nextcloud/perf/noid/skip-tree-lookup-for-non-calendar-requests
perf(dav): skip non-calendar requests in webcal caching plugin
2024-04-03 07:44:33 +07:00
Côme Chilliet 9aa7225ed3
Merge pull request #44332 from nextcloud/fix/fix-chunkupload-quota-check
fix(dav): Fix quota check for chunk upload
2024-04-02 17:44:21 +07:00
Côme Chilliet ec5133b739 fix: Apply new coding standard to all files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:21 +07:00
Côme Chilliet 01f59be55a chore(dav): Fix tests for length headers on upload
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:13 +07:00
Daniel Kesselberg 4bdb473aae
perf(dav): skip non-calendar requests in webcal caching plugin
The webcal caching plugin is active when the X-NC-CalDAV-Webcal-Caching header is there.

findPrincipalByUrl sends a request for /remote.php/dav/principals/users/admin/ using the caldavService which sets the header by default.[^1]

As X-NC-CalDAV-Webcal-Caching only impacts calendar requests, we can skip non-calendar requests.

[^1]: b3670f1805/src/services/caldavService.js (L43)

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-03-27 20:04:23 +07:00
Robert C. Schaller fa6e6131ee fix(dav): wrong comparison method between two events
Old comparison implementation compares each element of the array against each other with no respect for the associated array label, which leads to wrongful removals because one value is accidentally present in a completely different label. New comparison works 'by-label' individually.

Partly fixes #41084 because changes between 'SEQUENCE' not present, 'SEQUENCE:0' and 'SEQUENCE:1' were not detected in the old implementation and thus no email update sent.

Co-authored-by: Christoph Wurst <ChristophWurst@users.noreply.github.com>
Signed-off-by: Robert C. Schaller <gtbc_robert.schaller@rsxc.de>
2024-03-25 13:18:58 +07:00
Christoph Wurst 3dea99f42b
fix(dav): Add retention time to sync token cleanup
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-03-21 18:37:21 +07:00
Hamza 007b54afed
Merge pull request #44376 from nextcloud/fix/dav/acls-shared-addressbook
fix(dav): ACLs for shared addressbooks
2024-03-21 14:33:43 +07:00
Christoph Wurst b6e1685683
fix(dav): ACLs for shared addressbooks
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-03-21 11:50:35 +07:00
Côme Chilliet fa8efd5df8
fix(systemtags): Forbid tagging of readonly files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-19 16:01:12 +07:00
Christoph Wurst d4ac4b81e1
Merge pull request #44130 from nextcloud/fix/dav/occ-fix-caldav-sync-tokens
fix(dav): Add occ command to fix missing caldav sync tokens
2024-03-14 14:05:27 +07:00
Christoph Wurst f40f962c2e
fix(dav): Add occ command to fix missing caldav sync tokens
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-03-12 12:44:00 +07:00
Christoph Wurst 1e8238b9e4
test(dav): Add unit test for no calendars/subscription limit
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-03-12 12:41:15 +07:00
Robin Appelman e7a7b4a401 perf: switch places that always use the first getById result to getFirstNodeById
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-03-04 13:57:31 +07:00
Richard Steinmetz 53ef6c5f71
feat(dav): update a principal's schedule-default-calendar-URL
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-02-28 14:51:10 +07:00
Hamid Dehnavi 7bf31df0bc Refactors "substr" calls to improve code readability
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2024-02-23 15:54:10 +07:00
Christoph Wurst dc7f2baf26 fix(dav): Rate limit calendar/subscription creation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-02-23 08:52:59 +07:00
Louis Chemineau 8e95d0f3ae
Check share attributes when downloading versions
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-02-21 15:06:01 +07:00
Anna Larch dce69154ba enh(sharing): enable unsharing for sharees for DAV shares (addressbooks and calendars)
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-02-15 18:01:12 +07:00
Côme Chilliet 303e2febc7
Merge pull request #43387 from nextcloud/fix/migrate-away-from-ilogger-in-jobs 2024-02-08 18:27:44 +07:00
Louis Chemineau 898df41de9
Revert "Merge branch 'master' of github.com:nextcloud/server"
This reverts commit d9d60238c7, reversing
changes made to ba3fdb0cdc.
2024-02-08 15:31:19 +07:00
Côme Chilliet 166773879b fix!: Migrate jobs away from deprecated interfaces
BREAKING CHANGE: Removed ILogFactory::getCustomLogger deprecated method

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-02-08 10:28:29 +07:00
Joas Schilling d086b6c81d
fix(tests): Make PHP 8.1.2 with Datetime Diff Bug pass the notifier test
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-26 16:16:37 +07:00
Joas Schilling e981619c01
fix(dav): Fix user status "Undefined array key 0 at StatusService.php#98"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-10 09:18:08 +07:00
John Molakvoæ 18399fc1cf
fix: improve typing and use \OCP\Server::get
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2024-01-09 10:56:34 +07:00
John Molakvoæ 82b5a19a35
fix: public dav and files_sharing testing fixes
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2024-01-09 10:56:14 +07:00
John Molakvoæ 11096e2060
fix(dav): undeclared `$cache` property
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2023-12-21 14:23:52 +07:00
Anna Larch 4c6eff975f fix(userstatus): set user status to 'In a meeting' if calendar is busy
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-12-19 14:59:00 +07:00
Anna Larch fc4ef6133b fix(ooo): add new ooo status with new emoji
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-12-18 11:35:00 +07:00
Joas Schilling 6056928dc6
feat(comments): Add a meta data column for comments
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-12-14 14:32:00 +07:00
Christoph Wurst 9abfcad3e3
fix(dav): Prevent out-of-office event time drifts
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-12-11 17:51:54 +07:00
Joas Schilling e4460e3bff fix(dav): Improve handling and logging of bulk upload failures
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-12-05 12:03:06 +07:00
Christoph Wurst 8b38d49437
fix(dav): Prioritize timezone from core/login
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-29 12:17:30 +07:00
Richard Steinmetz 26248d0fed
fix(dav): don't schedule out-of-office jobs for dates in the past
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2023-11-28 15:21:06 +07:00
Anna Larch f19645adab enh(userstatus): add OOO automation and remove calendar automation
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-11-28 10:28:06 +07:00
Richard Steinmetz 8191295f66
feat(dav): dispatch out-of-office started and ended events
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2023-11-23 17:18:49 +07:00
Joas Schilling aa5f037af7
chore: apply changes from Nextcloud coding standards 1.1.1
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +07:00
Christoph Wurst 5b7a5474b9
feat(caldav): Create personal event for out-of-office messages
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-14 13:57:12 +07:00
Côme Chilliet 546c024f6c
Fix dynamic property in CalDav tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-11-13 12:40:44 +07:00
Christoph Wurst 9b8cb5c819
feat(search): Seach for persons as event attendees and organizers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-10 18:56:43 +07:00
Benjamin Gaussorgues ddb8b68b55
feat(carddav): Allow advanced search for contacts
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-10 09:21:16 +07:00
Benjamin Gaussorgues 3545a1c613
feat(caldav): Allow advanced search for events/tasks
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-10 09:21:16 +07:00
Anna Larch f14a4f8fd7 feat(user status): automate user status for events
and automatically set a user status to free or busy depending on their calendar
transparency, event status and availability settings

Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-11-09 16:20:19 +07:00
Louis Chemineau d3a313f192
Support getting and setting metadata in DAV requests
Signed-off-by: Louis Chemineau <louis@chmn.me>
2023-11-08 16:23:53 +07:00
Maxence Lange f497d8b6e5 IFilesMetadata
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-07 12:43:08 +07:00
Anna Larch a75173a9a2 fix(scheduling): don't send iMIP emails to rooms / resources
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-11-06 21:01:18 +07:00
Joas Schilling 3a265cee30
fix(3rdparty): Don't use indirect dependency "Safe/" for functions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-23 15:25:14 +07:00
Ferdinand Thiessen 154a9989a7
Merge pull request #39852 from nextcloud/pragmaHeader
Stop sending deprecated Pragma header
2023-10-18 03:30:21 +07:00
Richard Steinmetz ace08819f9
fix(dav): expand recurrences when searching
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2023-09-21 23:28:35 +07:00
jld3103 aad2d02cf8
Enable litmus largefile tests
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-09-20 11:45:38 +07:00
Kate 6714e51b0c
Merge pull request #39626 from nextcloud/fix/remove-litmus-locks-tests
Remove litmus locks tests
2023-09-20 11:32:21 +07:00
John Molakvoæ (skjnldsv) f8ed23a426 fix(dav): fix report tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2023-09-18 22:19:30 +07:00
Côme Chilliet 4b8ef84440
Remove last at matcher call in dav application tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-14 15:01:26 +07:00
Daniel Kesselberg 457f4a530e fix(caldav): add webroot to objectid for activities
A calendar uri includes the webroot: example.com/cloud/remote.php/dav/calendars/alice/personal/
The calendar app uses base64(calendar uri) as identifier for calendar objects.

Without this patch the links from activity app to calendar app don't work for installations in a subdirectory.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-09-13 20:33:23 +07:00
hamza221 823908b017 Enable caldav push notifications by default
Signed-off-by: hamza221 <hamzamahjoubi221@gmail.com>
2023-09-12 13:58:40 +07:00
Anna Larch 7eee1de65b fix(CalDAV): check birthday calendar owner
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-09-06 16:57:02 +07:00
Robin Appelman 8966f7fbf2
reuse l10n and request in dav folder listing
instead of having to query those once for every node

Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 14:06:54 +07:00
Joas Schilling 25309bcb45
techdebt(DI): Use public IThrottler interface which exists since Nextcloud 25
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-08-28 15:50:45 +07:00
Git'Fellow 066f6ef16c Stop sending deprecated Pragma header
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2023-08-28 15:11:22 +07:00
Anna Larch 6bd78917d3 fix(CardDAV): set owner-principal, displayname properties for SAB
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-08-16 09:11:01 +07:00
Côme Chilliet 8857599656
DateRangeError in PHP>=8.3 is not a ValueError anymore
Fixing 32bit CI on PHP>=8.3

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-08-14 16:28:28 +07:00
Daniel Kesselberg 378a0f9837 fix: close cursor after reading the invitation
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-08-10 21:45:57 +07:00
jld3103 11372bf258
Remove litmus locks tests
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2023-07-30 17:56:26 +07:00
Robin Appelman 8af60b915b
fix share roots always being marked as writable
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-07-28 17:34:54 +07:00
Joas Schilling 489b4807db
Merge pull request #39304 from nextcloud/bugfix/noid/typed-event-comments-entity
fix(comments): Emit CommentsEntityEvent as typed event
2023-07-19 17:25:57 +07:00
Daniel aa5dcb0952
Merge pull request #38397 from nextcloud/enh/contacts/hide-adressbook-option
enh(contacts): show/hide addressbooks for all
2023-07-18 17:05:12 +07:00
Joas Schilling c3bc575d99
fix(comments): Emit CommentsEntityEvent as typed event
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-18 16:19:01 +07:00
Joas Schilling 72667a667d
feat(dav): Emit a typed event to deprecate OCA\DAV\Connector\Sabre::addPlugin
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-17 16:06:15 +07:00
Joas Schilling 308fc8d8ed
fix(dav): Use IRequest constant to match version
The pattern matches since a 10 year old client version

Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-11 07:35:50 +07:00
Johannes Merkel bb802956a2 enh(contacts): show/hide addressbooks for all
Signed-off-by: Johannes Merkel <mail@johannesgge.de>
2023-07-10 13:39:15 +07:00
Joas Schilling eb09053897
feat(admin_audit): Migrate to non-deprecated IEventDispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-04 12:36:30 +07:00
Johannes Merkel eda3824d91 enh(sab): Add profileUrl to SAB
Signed-off-by: Johannes Merkel <mail@johannesgge.de>
2023-07-03 17:55:18 +07:00
Christoph Wurst f43c24b0b1
Merge pull request #31790 from nextcloud/fix-events-with-old-lastoccurence
Fix creating events with old (< unix time) lastoccurence
2023-06-29 09:42:55 +07:00
Thomas Citharel 3886b00a33 Fix creating events with old (< unix time) lastoccurence
Closes #20804

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-06-27 11:16:47 +07:00
Arthur Schiwon a0f9556f7c
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-06-21 20:28:01 +07:00
Arthur Schiwon 49db546f78
fix: include invisible tags for admins
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 20:28:01 +07:00
Arthur Schiwon 29f59a54b4
fix: search with more than one search tags
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 20:28:00 +07:00
Christof Arnosti 5ad24991d7 Issue #36644: Test cases
Signed-off-by: Christof Arnosti <charno@charno.ch>
2023-06-05 20:40:34 +07:00
Christoph Wurst 4033154302
fixup! fix(caldav): Ignore invalid events for reminder generation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-31 13:08:30 +07:00
Christoph Wurst b7e7d80173
fix(caldav): Ignore invalid events for reminder generation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-31 09:49:04 +07:00
Christoph Wurst e524631ce3
fix(carddav): Don't show system address book cards to guests
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-25 12:26:26 +07:00
Christoph Wurst 5cfbd4c535
fix(carddav): Check enumeration settings for all SAB methods
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-25 09:11:26 +07:00
Thomas Citharel 13a3ebd4cc
feat(CardDAV): Add Sabre\DAV\IMoveTarget support to OCA\DAV\CardDAV\AddressBook
This allows to just UPDATE the card row instead of deleting it and reinsert it. It's very similar to https://github.com/nextcloud/server/pull/30120 for calendars.

As we need the addressbookid exposed, this introduces OCA\DAV\CardDAV\Card that extends Sabre's.

I chose specifically NOT to auto-inject LoggerInterface in Addressbook like in #30120 because the chain of DI is huge just for ONE simple call and it would break an existing dirty call (OCA\Contacts calling OCA\DAV) of ContactsManager in Contacts: https://github.com/nextcloud/contacts/pull/1722 (in SocialApiService), but this is debatable.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-05-16 11:38:57 +07:00
Simon L 25dd264965
Merge pull request #37965 from nextcloud/fix/transactional-system-addressbook-sync
fix(dav): Run system address book create-if-not-exists in transaction
2023-05-16 11:33:09 +07:00
Christoph Wurst 2cc672d26b
fix(dav): Run system address book create-if-not-exists in transaction
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-12 14:15:02 +07:00
Christoph Wurst 1381c4c157
feat(users): Store and load a user's manager
Co-Authored-By: hamza221 <hamzamahjoubi221@gmail.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-12 13:56:48 +07:00
Anna Larch 5c2eb732f1 fix(carddav): expose system address book
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-05-11 18:59:30 +07:00
Anna Larch bd80a1b2dd
feat(dav): store scopes for properties and filter locally scoped properties for federated address book sync
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-05-09 19:17:39 +07:00
Daniel Teichmann 56f36b94e5
Rename setting 'sendEventRemindersToSharedGroupMembers' to 'sendEventRemindersToSharedUsers'.
Signed-off-by: Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de>
2023-05-04 13:05:00 +07:00
John Molakvoæ 20df0019f1
fix(psalm): systemtags
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2023-04-28 12:23:52 +07:00
Robin Appelman 74ced3d2eb
expose system tags as dav property for files
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-04-28 10:46:38 +07:00
Ferdinand Thiessen 62c4ae78df Feature: Provide access to app generated calendars through CalDAV
This adds CalDAV support for app generated calendars,
which are registered to the nextcloud core.
This is done by adding a dav plugin which wraps
all ICalendarProviders into a Sabre plugin (inspired by the deck app).

Add unit test for AppCalendar wrapper plugin and calendar object implementation.

Signed-off-by: Ferdinand Thiessen <rpm@fthiessen.de>
2023-04-25 18:11:49 +07:00
Julius Härtl d9c81f56ad tests: Adapt node related unit tests mocks to required root view
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-04-17 23:46:52 +07:00
Julius Härtl 160bd75d0a fix: Use proper path when creating node instances
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-04-17 23:46:52 +07:00
Côme Chilliet 8f26a5d766
Fix dav application tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-03 10:52:35 +07:00
Côme Chilliet 966a3e6963
Tidy up typing in OC\Files\View
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-03 10:52:33 +07:00
Simon L 0e5fcb49d4
Merge pull request #36661 from onny/event-update-mail-subject
Invitation mail: Change subject if event got updated
2023-03-16 12:26:12 +07:00
Joas Schilling c7400fa4d5
fix(CI): Add unit test for nextcloud/server#37167
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-03-13 11:41:36 +07:00
Joas Schilling c3c3dcbcd9
fix(user_status): Fix the user status automation on the day availability rules are adjusted
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-03-13 11:41:36 +07:00
Michiel de Jong c0e84cb512 Add SHARE_TYPE_SCIENCEMESH
Signed-off-by: Michiel de Jong <michiel@unhosted.org>
2023-03-08 16:46:55 +07:00
Julius Härtl d515da502f fix: Use proper path for quota fetching
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-03-06 22:46:07 +07:00
blizzz e08fa78224
Merge pull request #36594 from nextcloud/fix-handling-of-invitations
fix(caldav): Correctly handle calendar recreation for invitations when the current calendar is in the trashbin
2023-03-02 11:54:51 +07:00
Joas Schilling 98ed72b3ed
Revert "fix(performance): Do not set up filesystem on every call" 2023-02-21 07:36:43 +07:00
Jonas Heinrich 944efa388a Invitation mail: Change subject if event got updated
Signed-off-by: Jonas Heinrich <heinrich@synyx.de>
2023-02-20 13:53:53 +07:00
Anna Larch 5d4efb4d5f
Do not set up filesystem on every call
Also remove old Oc_FileChunking logis that produced GC- collectable chunks

Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-02-17 19:18:37 +07:00
Christoph Wurst b5f7afd0fb
fix(caldav): Fix reminder timezone drift for all-day events
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-02-09 15:19:00 +07:00
Thomas Citharel 4fd58aa45c
fix(caldav): Correctly handle calendar recreation for invitations when the current calendar is in the trashbin
Follow-up to #32361, see https://github.com/nextcloud/calendar/issues/4098 for details

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-02-09 14:43:27 +07:00
Julius Härtl 7b413a41eb
perf(dav): Do not call general setupFS on ever dav auth
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-02-09 10:19:37 +07:00
Christoph Wurst ee05e01cf4
Merge pull request #29010 from mattian/fix/19218/birthday-leap-day
dav: fix birthday calendar event generation for leap days
2023-02-08 08:55:22 +07:00
Côme Chilliet 476d5dceb2
Skip tests that cannot succeed on 32bits
For some reason a timestamp in the past also triggers the PHP error
 about not being able to represent it as an int, so skipping that test
 on 32bits.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:34 +07:00
Côme Chilliet 1994554b44
Fix Sabre connector test
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:33 +07:00
Côme Chilliet d315bce300
Improve behavior with dates on 32bits and fix tests or skip them
We do not support events after 2038 on 32bits but still behave better
 when date range start/end is after 2038.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:32 +07:00
Côme Chilliet cd885b5705
Type sizes as int|float throughout the code base
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:31 +07:00
Mattia Narducci b55c62c6c2 dav: fix birthday calendar event generation for leap days
Fix generation of birthday calendar events for the 29th of February.

A recurring event for the 29th of February in the (default) Gregorian
calendar system would only generate instances in leap years. Fix this
behaviour by generating recurring events for the last day of February,
the 29th on leap years and the 28th otherwise.

Signed-off-by: Mattia Narducci <mattianarducci1@gmail.com>
2023-02-06 19:11:46 +07:00
Anna Larch 38e9cb6a05 Use recurrence instance to build iMip email
instead of the main VEVENT of a repeating event

Fixes part of https://github.com/nextcloud/calendar/issues/3919

Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-02-02 16:25:59 +07:00
Joas Schilling 13846ac2a8
Merge pull request #36266 from nextcloud/bugfix/noid/fix-double-where-in-custom-property-test
Fix double where in CustomProperiesBackendTest
2023-01-23 11:37:18 +07:00
Joas Schilling f99642b0bc
Merge pull request #36262 from nextcloud/chore/dav/void-test-methods
chore(dav): Add void return type to test methods
2023-01-23 07:08:02 +07:00
Joas Schilling ab96942d92
Fix double where in CustomProperiesBackendTest
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-01-20 10:44:50 +07:00
Christoph Wurst 898d2923cc
chore(dav): Add void return type to test methods
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-01-20 08:38:43 +07:00
Christoph Wurst 3c9ceffa7c
chore(dav): Remove useless var tag
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-01-19 19:05:23 +07:00
Vincent Petry ecf6b7667b Extend ViewOnly DAV plugin to versions endpoint
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2023-01-13 09:27:16 +07:00
Côme Chilliet 95520bc467
Merge pull request #36026 from nextcloud/fix/remove-at-matcher-in-dav
Get rid of deprecated at matcher in dav application tests
2023-01-10 10:18:50 +07:00
Côme Chilliet 574c6770d1
Get rid of deprecated at matcher in dav application tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-05 18:28:07 +07:00
Anna Larch d58ecdcfad Hook into sabre event lifecycle for iMip Messages
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-01-05 11:55:26 +07:00
Anna Larch 05f2dc68fc [WIP] Add logging to Scheduling Plugin
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-01-04 16:58:00 +07:00
Anna Larch e6f23f50df Remove comment and guests option from Invitations UI
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-12-20 16:31:06 +07:00
Vincent Petry 1bae41ccec
Merge pull request #33709 from nextcloud/enh/displayname-cache-getStorageInfo
Use display name cache on getStorageInfo
2022-12-19 12:07:43 +07:00
Côme Chilliet cbbb0712db
Merge pull request #34807 from nextcloud/fix/compute-notification-parsed-subject
Compute notification parsed subject from rich subject when possible
2022-12-19 10:46:39 +07:00
Côme Chilliet e553cd1bb9
Fix comments and dav tests with Notifications and Activity changes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-12-19 09:57:32 +07:00
Julius Härtl 1746344481 Use display name cache on getStorageInfo
Signed-off-by: Julius Härtl <jus@bitgrid.net>

Adapt test to also run isolated

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-12-16 17:15:21 +07:00
Côme Chilliet 8ec7e4301d
Use the correct Server class in apps/dav/tests/unit/CalDAV/CalendarImplTest.php
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-12-05 16:32:01 +07:00
Côme Chilliet ee06261b82
Fix codestyle in modified files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-12-05 16:08:40 +07:00
Côme Chilliet 30560d3165
Merge branch 'master' into tests/fix-phpunit-warnings
Signed-off-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
2022-12-05 12:03:39 +07:00
Côme Chilliet cb0450b5c4
Improve typing on new methods
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-12-05 12:01:12 +07:00
Joas Schilling 13957032cf
More fixing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-11-25 11:46:56 +07:00
Côme Chilliet c79a6b3f62
Fix errors from PHP 8.2 testing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-14 17:08:21 +07:00
Julius Härtl e29720f9b2
Next attemp on imip tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-11-09 16:37:34 +07:00
Julius Härtl 908b7aa70a
Attempt to fix CalendarImpl tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-11-09 16:37:34 +07:00
Julius Härtl 2a684f6741
Fix some phpunit test warnings
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-11-09 16:37:34 +07:00
Richard Steinmetz 304b71647f
Fix duplicate event email notifications
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2022-11-04 16:24:57 +07:00
Anna Larch e5c290bb7f Switch to DisplayNameCache for CalDAV
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-11-03 10:26:34 +07:00
Thomas Citharel 6f15873321 Add a background job to prune outdated sync tokens
We remove all outdated sync tokens, based on their auto-incremented ID.

By default we only keep the last 10 000, but this can be configurable.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-27 20:12:13 +07:00
Anna 9c516c2009
Merge pull request #34388 from sylvainmetayer/feat_2464_exclude_contact_from_birthday_calendar
feat(contacts): exclude contact from birthday calendar
2022-10-03 14:15:36 +07:00
blizzz f055328094
Merge pull request #33608 from nextcloud/perf/improve-getCalendarsForUsers
Remove the loop of calendars when only one is needed
2022-10-03 10:59:25 +07:00
Sylvain bfc8f64237 feat: add tests cases
Signed-off-by: Sylvain <git@sylvain.dev>
2022-10-02 18:34:43 +07:00
Anna Larch 3a8c7b6bf3 Remove the loop of calendars when only one is needed
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-10-01 22:17:40 +07:00
Robin Appelman 1de0b10751 add test for trying to fopen a file which no longer exists on disk
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-09-29 10:27:32 +07:00
Robin Appelman 3236a8e2af
add test for search operator limit
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-09-08 13:32:05 +07:00
luz paz 9d26671f05 Fix typos in apps/ subdirectory
Found via `codespell -q 3 -S l10n,./apps/files_external/3rdparty -L adn,ba,boxs,keypair,jus,optionel,ressource,tabel ./apps/`

Signed-off-by: luz paz <luzpaz@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-09-05 12:59:54 +07:00
Côme Chilliet 9874557e43
Fix Capabilities tests for dav application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-29 15:24:58 +07:00
Anna Larch 4ca4b02793 Support iMIP invitations from Mail
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-08-22 22:10:12 +07:00
Joas Schilling 71065f5fd5
Merge pull request #33615 from nextcloud/perf/noid/user-displayname-cache-for-activity-providers
Use user name cache in activity providers
2022-08-19 12:28:44 +07:00
Joas Schilling eab5189abb
Fix carddav activities
The settings where combined last minute but at the same time the activities
where not adjusted to map an existing setting so the filter was not possible
to even limit it to the types that the activities had.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-08-19 10:50:45 +07:00
Joas Schilling 7e11778190
Use user name cache in activity providers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-08-19 10:48:32 +07:00
Côme Chilliet cb271b759e
Fix dynamic property creations in test files
This fixes warnings in PHP 8.2

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-01 15:07:53 +07: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 +07: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 +07:00
Vincent Petry 92e60e3858
Add nc:share-attributes Webdav property
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-07-28 16:53:23 +07: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 +07: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 +07:00
Anna 5671abd168
Merge pull request #33251 from cneukom/feature/birthday-calendar-reminder-settings
Birthday Calendar Reminder Setting
2022-07-26 20:59:33 +07:00