Commit graph

2046 commits

Author SHA1 Message Date
SebastianKrupinski
b9240b60a3 fix(carddav): limit vcard size
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-11 12:36:41 -04:00
SebastianKrupinski
0013a52d8b fix(caldav): limit vevent size
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-07-10 15:04:54 -04:00
SebastianKrupinski
2dd7a4c3dc 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-26 17:47:10 -04:00
Christoph Wurst
8c26abd493 fix(dav): Limit number of UPDATES for sync token created_at
Address book and calendar sync tokens have a created_at column in 26+
and we need to assign a current timestamp to the existing data at
upgrade so the data isn't cleaned up immediately. Updating the full
table is expensive and fails on clustered setups that limit transaction
size. We don't need a timestamp for the oldest rows so we can skip
updating them.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-06-19 16:05:56 +00:00
Richard Steinmetz
012bb75dba fix(caldav): event links in shared calendar notifications
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-06-11 18:41:56 +00:00
Joas Schilling
e5d0a7b2f5 fix(dav): Don't log access control as error
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-10 11:56:15 +00:00
Hamza Mahjoubi
4a1e7d2dc1 fix(dav): Rate limit address book creation
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2024-06-07 12:15:58 +02:00
John Molakvoæ
88c8e244f1
Merge pull request #45639 from nextcloud/backport/45235/stable27 2024-06-07 12:13:20 +02:00
Christoph Wurst
8cf58e4f15
fix(dav): Add retention time to sync token cleanup
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-06-04 19:15:10 +02:00
Anna Larch
02b984debd fix(caldav): automatically delete outdated scheduling objects
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-06-03 17:07:29 +02:00
Daniel Kesselberg
dead36211e 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-06-03 12:17:46 +02:00
Daniel Kesselberg
a9172f0092 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-06-03 12:17:46 +02:00
Daniel
bf9b80fdab
Merge pull request #44196 from nextcloud/backport/44130/stable27
[stable27] fix(dav): Add occ command to fix missing caldav sync tokens
2024-06-03 12:17:07 +02:00
Daniel Kesselberg
9bcff76908 feat(caldav): expose calendar subscriptions
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-31 17:56:30 +02:00
Christoph Wurst
86020a510a
fix(dav): Add occ command to fix missing caldav sync tokens
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-05-31 14:50:53 +02:00
Anna Larch
5e0ce35012 fix(caldav): loop through all events for busy events
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-05-14 13:33:02 +00:00
Joas Schilling
bf9c3c6a44
Merge pull request #45016 from nextcloud/backport/45001/stable27
[stable27] fix(DAV): Migrate known exceptions to Sabre exceptions when copying
2024-05-06 07:59:19 +02:00
Anna Larch
5e9da1bf46 fix(CalDAV): remove UNKNOWN from room / resource consideration
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-04-26 11:21:28 +00:00
Joas Schilling
8923c37f57 fix(DAV): Migrate known exceptions to Sabre exceptions when copying
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-04-24 16:30:12 +00:00
Git'Fellow
f60173eb59
Merge pull request #44472 from nextcloud/backport/44017/stable27
[stable27] Fix/caldav/eventcomparisionservice uses wrong array comparison
2024-04-17 14:46:01 +02:00
Côme Chilliet
a007651d20 fix(dav): Fix quota check for chunk upload
Do not ignore OC-Total-Length when Content-Length and
 X-Expected-Entity-Length are missing

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-04 12:50:31 +00:00
Robert C. Schaller
c98305c31a 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-26 08:48:13 +00:00
Benjamin Gaussorgues
5a4db810e9
Merge pull request #44385 from nextcloud/backport/44360/stable27 2024-03-21 16:27:15 +01:00
Andy Scherzinger
5d84d652d6
Merge pull request #44378 from nextcloud/backport/44376/stable27
[stable27] fix(dav): ACLs for shared addressbooks
2024-03-21 15:55:07 +01:00
Anna Larch
512634fa2e fix(caldav): add EXDATE and EXRULE to confidential object
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-03-21 13:37:45 +00:00
Christoph Wurst
08a7937af5
fix(dav): ACLs for shared addressbooks
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-03-21 11:59:29 +01:00
Côme Chilliet
3b4d5eaa94
fix(dav): Add missing use for OCP\Constants
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-19 11:22:54 +01:00
Côme Chilliet
a800a685eb
chore: Break closure call on two lines to make it readable
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-19 11:22:49 +01:00
Côme Chilliet
a815f69345 fix(systemtags): Forbid tagging of readonly files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-03-19 09:10:06 +00:00
Julius Härtl
93c0335eb1 fix: Use proper path when trying to check if a file needs to get copied
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-03-08 10:52:45 +00:00
John Molakvoæ
42d040cb04
Merge pull request #43798 from nextcloud/backport/42459/stable27 2024-02-29 11:36:37 +01:00
John Molakvoæ
84c129d19d
Merge pull request #43799 from nextcloud/backport/39553/stable27 2024-02-29 11:36:29 +01:00
Louis Chemineau
fcc239667f fix(dav): Init ViewOnlyPlugin after auth
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-02-28 10:17:28 +01:00
Patrick Fischer
37d34f905d Bug fix: Select the correct table based on CALENDAR_TYPE_CALENDAR
Signed-off-by: Patrick Fischer <mail@patrickfischer.ch>
2024-02-23 20:38:00 +00:00
MichaIng
cb35794f02 fix(dav): fallback realm for HTTP authentication
By default, the name of the Nextcloud instance is an empty string, until changed by the admin. This leads to an empty realm sent with the WWW-Authenticate header, while the realm is mandatory for Basic HTTP authentication. Some clients have issues with an empty realm, e.g. Thunderbird cannot store passwords in this case.

This commit applies "Nextcloud" as fallback for the realm, in case the name of the Nextcloud instance is not set.

Solves: https://help.nextcloud.com/t/thunderbird-dont-save-caldav-password-because-of-missing-httprealm-or-formsubmiturl/93233

Signed-off-by: MichaIng <micha@dietpi.com>
2024-02-23 20:32:20 +00:00
John Molakvoæ
fb0a2d54fb
Merge pull request #43752 from nextcloud/backport/43732/stable27 2024-02-22 16:45:05 +01:00
Christoph Wurst
844a1b47f5
fix(dav): Rate limit calendar/subscription creation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-02-22 10:47:24 +01:00
John Molakvoæ
245a439d47
Merge pull request #43740 from nextcloud/backport/43727/stable27 2024-02-22 10:45:17 +01:00
Louis Chemineau
5606cadae7
Check share attributes when downloading versions
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-02-21 21:47:50 +01:00
John Molakvoæ
cb5020483e fix(dav): report status
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-02-21 17:08:36 +00:00
Richard Steinmetz
8e67575a71 perf: skip request without read permission
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-02-21 12:48:30 +00:00
Johannes Merkel
823aa887e5
fix(CalDAV): set acls for DeletedCalendarObjectsCollection
Signed-off-by: Johannes Merkel <mail@johannesgge.de>
2024-01-18 08:40:09 +01:00
Richard Steinmetz
fe5b5a7fa3
fix(dav): allow multiple organizers if possible
This is very hacky! However, we want to allow saving events with multiple
organizers. Those events are not RFC compliant, but sometimes imported from major
external calendar services (e.g. Google). If the current user is not an organizer of
the event we ignore the exception as no scheduling messages will be sent anyway.

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-01-02 11:55:25 +01:00
Anna Larch
90cb0bcb8e fix(caldav): don't reuse query builder objects
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-12-16 10:05:34 +01:00
Anna Larch
becf192b6b fix(scheduling): don't send iMIP emails to rooms / resources
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-11-27 09:24:22 +01:00
Christoph Wurst
fe4be9f83d
Merge pull request #41730 from nextcloud/backport/41722/stable27
[stable27] fix(dav): Avoid date diffing if PHP is buggy
2023-11-24 16:58:46 +01:00
Christoph Wurst
69b9a56bbb fix(dav): Avoid date diffing if PHP is buggy
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-24 10:43:48 +00:00
Daniel Kesselberg
e7c97ad72f fix: lower threshold for system address book sync
- Switch back to countUsers to have the actual value. countSeenUsers is bad if Nextcloud is connected to a larger directory, but only a part is using Nextcloud and therefore the seen count is much lower because the sync is done for all users.
- Lower the threshold to 100 for smaller installations.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-11-22 19:53:52 +00:00
Christoph Wurst
f3e95bf05a
Merge pull request #41245 from nextcloud/backport/40665/stable27
[stable27] fix(dav): Reduce CalDAV backend memory footprint
2023-11-15 23:48:04 +01:00
Arthur Schiwon
337445746d
Merge pull request #41371 from nextcloud/backport/41354/stable27
[stable27] fix: Validate that we have a proper distributed cache configured
2023-11-15 22:40:40 +01:00