Commit Graph

346 Commits

Author SHA1 Message Date
Sebastian Krupinski 0ef2f4046d Merge pull request #61017 from nextcloud/fix/use-card-interface
fix: use card interface instead of object
2026-06-12 10:08:59 -04:00
Benjamin Gaussorgues a8fb722b0e chore: add strict types in IAddressBook::getKey
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:28 +02:00
SebastianKrupinski 507e6208ca fix: use card interface instead of object
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-06-10 18:05:10 -04:00
Carl Schwan 994565fec7 refactor: Use new IQueryBuilder::MAX_IN_PARAMETERS
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-03 13:45:29 +02:00
Côme Chilliet 1ab09ec753 chore: Apply new coding standard to all files
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
Christoph Wurst d1d24e65a4 fix(http): avoid iconv for header ascii fallback
iconv transliteration is locale- and config-dependent and fails silently
on some setups. UnicodeString::ascii() from symfony/string uses a built-in
transliteration table backed by symfony/polyfill-intl-normalizer, so it
works on all setups without requiring optional PHP extensions.

Assisted-by: Claude:claude-sonnet-4-6
Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com>
2026-05-22 14:58:14 +02:00
Ferdinand Thiessen d8e8703796 chore: add missing Override attribute to app code
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:28 +02:00
Robin Appelman 379fa54e2e Merge pull request #59312 from nextcloud/calender-sync-delete
Fix removed address book items not being synced between federated instances
2026-04-23 20:17:48 +02:00
Robin Appelman df76c9f882 fix: fix initial addressbook sync skipping items due to ordering
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-23 17:03:48 +02:00
Christoph Wurst 65db5e68b4 fix(dav): unify content disposition header escaping
Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com>
2026-04-22 14:05:42 +02:00
Robin Appelman 78d2541f10 fix: fix full addressbook sync with truncated results
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-17 17:26:59 +02:00
Robin Appelman 274e616fcf feat: add option to perform a full addressbook sync instead of a delta sync
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-17 17:26:57 +02:00
Robin Appelman 34273b53a6 fix: send deleted addressbook items in caldav sync
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-17 17:26:57 +02:00
Marcel Müller bfd3e8eaa4 fix: Remove SAB entries if backend does not match
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2026-04-08 17:52:48 +02:00
Côme Chilliet b256928385 fix: Remove use of static vars in dav application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-23 16:48:30 +01:00
Joas Schilling 57100fe78e fix(notifications): Update notifier exception handling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-02-20 08:13:42 +01:00
provokateurin f12cecb684 feat(rector): Enable SafeDeclareStrictTypesRector
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-09 10:59:31 +01:00
Carl Schwan 9a8d45d81f refactor(QueryException): Remove most usage of QueryException
This is preparation to move QueryException from OCP to OC as part of
Nextcloud 34.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-16 11:55:06 +01:00
Carl Schwan 4d47fdaa85 chore: Run rector with new rules for fetch
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:57 +01:00
Louis Chemineau e976a1323f chore: Register system_addressbook_exposed in lexicon
Signed-off-by: Louis Chmn <louis@chmn.me>
2025-10-10 19:02:41 +02:00
Louis Chemineau d14c96b26d fix(contacts): Do not expose SAB in /contactsmenu
When hitting the `/contactsmenu/contacts` endpoint with the `dav.system_addressbook_exposed` config switch set to `"no"`, the system address book content is still listed in the response.

This ensure that we do not expose unexpectedly the system address book.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-10-10 19:02:40 +02:00
SebastianKrupinski cab9a5deea fix: automatically disable sab
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-09-18 11:00:59 -04:00
Christoph Wurst 21d28c887a Merge pull request #54424 from nextcloud/fix/dav/user-addressbook-clean-up
fix(dav): clean up user's addressbook shares on deletion
2025-09-02 20:18:27 +02:00
Richard Steinmetz 4cf2203de8 perf(carddav): ungreedify search result aggregation
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-09-01 12:06:48 +02:00
Christoph Wurst 8e1a070bd5 fix(dav): clean up user's addressbook shares on deletion
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-09-01 10:37:08 +02:00
Richard Steinmetz 16ad73cd15 feat(ocp): create contacts from string
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-29 15:04:57 +02:00
Richard Steinmetz b7dc720848 feat: calendar federation
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-27 17:14:15 +02:00
Richard Steinmetz caf664ea43 fix(carddav): IAddressBook::getKey() should return a string
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-26 13:31:04 +02:00
Christoph Wurst 0c4bb5e8c5 fix(dav): calculate permissions based on addressbook principal
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-08-06 18:15:43 +02:00
Daniel Kesselberg 13f25c9316 fix(carddav): return correct sync token for non-truncated requests
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-06 14:32:25 +02:00
Daniel Kesselberg b54c5392b6 feat(carddav): handle truncated non-initial requests
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-06 14:04:55 +02:00
Hamza Mahjoubi 36d9fcbb4d feat(cardav): support result truncation for addressbook federation
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2025-08-06 14:04:55 +02:00
SebastianKrupinski 49d8e29a18 fix: do not ignore move command object target uri
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-01 09:36:07 -04:00
Daniel Kesselberg 68b9493a51 fix(federation): respect sharing.federation.allowSelfSignedCertificates for address book sync
The configuration option, to accept self-signed certificates, is now also used when syncing address books.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-16 12:36:45 +02:00
Daniel Kesselberg 0f4b5e6656 Revert "fix(dav): only consider user's principal for unsharing entries"
This reverts commit 023b98c44b.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-09 16:06:12 +02:00
Ferdinand Thiessen 5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Daniel daa9852722 Merge pull request #52215 from nextcloud/perf/carddav/dont-query-circles
perf(carddav): don't query circle memberships
2025-06-01 19:57:13 +02:00
Daniel Kesselberg 3d1de793b1 refactor(dav): replace IAppData with IAppDataFactory for PhotoCache
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-15 18:28:45 +02:00
Daniel Kesselberg 023b98c44b fix(dav): only consider user's principal for unsharing entries
Before: Find all entries in `dav_shares` with `access = 5` for the user's principal, as well as group and circle memberships.

After: Find all entries in `dav_shares` with `access = 5` solely for the user's principal.

Future support for unsharing group or circle principals could be considered as a feature enhancement.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-05-14 09:03:33 +02:00
Richard Steinmetz de37af9687 perf(carddav): don't query circle memberships
It is not possible to share address books with circles so it is
pointless to query for address books shared with joined circles.

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-04-16 10:04:01 +02:00
Kate 6740804328 Merge pull request #51195 from nextcloud/feat/photo-cache-avif
feat: Allow AVIF content type in PhotoCache
2025-03-18 14:48:22 +01:00
Hamza Mahjoubi c9d9abd46e fix(cardav): only show useres from enabled addressBooks in contacts menu
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2025-03-17 11:56:34 +01:00
Christoph Wurst ec664b0aea fix(dav): Create SAB at installation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-03-06 18:40:30 +01:00
Miguel Sánchez de León Peque a54c04ede6 feat: Allow AVIF content type in PhotoCache
Signed-off-by: Miguel Sánchez de León Peque <peque@ieco.io>
2025-03-03 11:47:27 +01:00
Joas Schilling acac415121 fix(activity): Fix activity parameter types
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-02-17 15:55:31 +01:00
Côme Chilliet 64863c9d46 chore: Apply new rector configuration to apps folder
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-13 11:46:42 +01:00
Git'Fellow 36d6b0f1e6 refactor: Use Http framework where possible
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-12-14 11:23:29 +01:00
SebastianKrupinski 0628eb62f3 fix: return 204 instead of 404
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2024-12-13 11:47:18 -05:00
skjnldsv b15fdfd40e chore(profile): move profile app from core to apps
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-14 10:25:02 +01:00
Christoph Wurst 0bb68ab734 fix(carddav): Handle race for SAB creation better
* Accept non repeatable read and INSERT conflict by another read
* Handle replication edge case

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-11-06 09:13:01 +01:00