nfebe
25e7dd799e
fix(sharing): Align userid config key in UserPlugin with Manager
...
UserPlugin reads `shareapi_restrict_user_enumeration_full_match_userid`
(no underscore) while Manager.php and the frontend both use
`shareapi_restrict_user_enumeration_full_match_user_id` (with underscore).
This mismatch causes the "disable exact match by user ID" admin setting
to have no effect on actual sharee search results.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-03-12 13:19:09 +01:00
Peymaneh
3985555753
feat(UserPlugin): Include teams in group search
...
Signed-off-by: Peymaneh <peymaneh@posteo.net>
2026-03-09 13:51:27 +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
7b6078875b
refactor: Run rector on lib/private
...
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:50:18 +01:00
provokateurin
bf49f62da3
feat(UserPlugin): Also full match on additional email addresses
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-01-21 14:36:37 +01:00
provokateurin
cfa25ece7e
fix(UserPlugin): Rewrite from scratch
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-01-21 14:29:58 +01:00
Maxence Lange
b28176458d
fix(contacts): not contact, not local
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-12-22 12:36:33 -01:00
Julius Knorr
7d5ffa50ae
feat: Allow to block full matches on the display name
...
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-18 14:04:46 +00:00
Julius Knorr
a45f4b0cdc
fix: Fix setting name inconsistency between backend and frontend
...
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-12-12 13:08:34 +01:00
nfebe
40246d9a19
fix(sharing): Add isTrustedServer flag to lookup results
...
When `show_federated_shares_to_trusted_servers_as_internal` is enabled,
lookup server results were being filtered out because they lacked the
`isTrustedServer` flag. This adds the flag to lookup results by:
- Injecting TrustedServers service into LookupPlugin
- Adding `server` and `isTrustedServer` fields to each lookup result
- Updating tests to reflect new structure
This ensures lookup results from trusted servers appear in internal
sharing while non-trusted servers are correctly filtered out.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-11-24 23:32:40 +01:00
Daniel Calviño Sánchez
c40fcba5a4
fix: Fix user collaborators returned when searching for mail collaborators
...
The MailPlugin collaborator returned results for both user and mail
collaborators, but it was registered only for mail collaborators. While
it might make sense to move the user results to the UserPlugin instead
that change would be more complex and riskier, so for now the MailPlugin
is now registered for both user and mail collaborators and the results
are limited only to the registered type.
As the plugins are registered only with their class and then resolved
when needed using dependency injection it is not possible (as far as I
know) to provide an explicit parameter in the constructor to
differentiate whether the MailPlugin should return user or mail
collaborators. To overcome this two subclasses are introduced,
MailByMailPlugin and UserByMailPlugin, which just hardcode in their
constructor the collaborator type that their parent MailPlugin must use,
and those subclasses are the ones registered instead of the MailPlugin
(which still contains all the logic).
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-11 01:20:17 +01:00
nfebe
3276aff83c
fix: Make federation TrustedServers dependency optional in RemotePlugin
...
The federation app is not always installed, causing QueryException when
`OCA\Federation\TrustedServers` is injected as a hard dependency.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-22 00:19:31 +02:00
Louis
77194d5232
Merge pull request #54102 from nextcloud/ensure-cloud-key
...
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis (push) Has been cancelled
Psalm static code analysis / static-code-analysis-security (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ocp (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ncu (push) Has been cancelled
fix: Ensure CLOUD key exists before resolving Cloud ID
2025-10-17 18:20:59 +02:00
nfebe
c9bb6eedc6
fix: Include email when searching share suggestions
...
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-09 06:53:51 +01:00
nfebe
c1d9e22c51
fix(sharing): Adapt share suggestions to match trusted servers configs
...
When `show_federated_shares_to_trusted_servers_as_internal` is enabled
but `show_federated_shares_as_internal` is not, filter federated share
suggestions to only include trusted servers. Previously, searching for
an email address would suggest non-trusted federated servers.
Resolved : #54511
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-10-09 06:53:46 +01:00
Daniel Kesselberg
83a691709c
refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-04 21:54:22 +02:00
Ferdinand Thiessen
5c7ca58a3c
fix(Collaboration\UserPlugin): ensure full match is included in results
...
When searching we need to:
1. check if sharing is limited to groups
- if yes only include those
- otherwise continue
2. check if there are restrictions to groups or phonebook
3. check if full match is included
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-26 18:26:37 +02:00
Enjeck C
7a7820605f
fix: Ensure CLOUD key exists before resolving Cloud ID
...
Signed-off-by: Enjeck C <patrathewhiz@gmail.com>
2025-08-22 18:51:29 +01:00
provokateurin
3c7fce39aa
chore(OC\Share\Constants): Remove unused SHARE_TYPE_* constants
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-29 10:39:33 +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
Julius Knorr
0a251213a3
fix: filter out contacts with invalid email addresses in sharee completion
...
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-03-26 11:51:52 +01:00
Ferdinand Thiessen
00d08a4f69
fix(lookup-server): disable lookup server for non-global scale setups
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 14:26:47 +01:00
Ferdinand Thiessen
34251c4375
fix(lookup-server): do not query data by default
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 14:26:47 +01:00
provokateurin
9836e9b164
chore(deps): Update nextcloud/coding-standard to v1.3.1
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Joas Schilling
280d70a5f4
fix(federation): Fix missing protocol on CloudID remote
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-06-27 11:26:08 +02:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02: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 +02:00
Claus-Justus Heine
493333036b
fix(collaboration): collaboration MailPlugin: Protect access to a potentially missing array component by ??.
...
Signed-off-by: Claus-Justus Heine <himself@claus-justus-heine.de>
2024-02-27 17:50:51 +01:00
Baptiste Fotia
9af96d9f9a
feat(php,vue): Create a new parameter
...
Signed-off-by: Baptiste Fotia <fotia.baptiste@hotmail.com>
2024-01-31 10:44:40 +01: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 +01:00
Faraz Samapoor
14ad1e9219
Adds type hint to the method parameter.
...
Co-authored-by: fenn-cs <fenn25.fn@gmail.com>
Signed-off-by: Faraz Samapoor <fsa@adlas.at>
2023-09-21 11:28:02 +03:30
Faraz Samapoor
6427863443
Refactors lib/private/Collaboration.
...
Mainly using PHP8's constructor property promotion.
Signed-off-by: Faraz Samapoor <fsa@adlas.at>
2023-09-21 11:28:02 +03:30
Faraz Samapoor
e7cc7653b8
Refactors "strpos" calls in lib/private to improve code readability.
...
Signed-off-by: Faraz Samapoor <fsamapoor@gmail.com>
2023-05-15 15:17:19 +03:30
Côme Chilliet
426c0341ff
Use typed version of IConfig::getSystemValue as much as possible
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-05 12:50:08 +02:00
Côme Chilliet
f5c361cf44
composer run cs:fix
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +01:00
Joas Schilling
269df904a3
Improve email search results
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-12-09 22:40:47 +01:00
Anna Larch
88b0aea2b0
Add fallback options for contacts array
...
when the UID or FN is null, the email address / dsiplay name will be used instead
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-10-01 22:47:58 +00:00
Louis Chemineau
347ca20f4e
Rename setting name to reduce its length
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-06-27 11:04:17 +02:00
Louis Chemineau
80fa3c7319
Add setting to ignore email during search
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-05-03 17:50:29 +02:00
Vincent Petry
cd95fce105
Merge pull request #31932 from nextcloud/feat/ignore_second_dn
...
Add settings to ignore second display name in search
2022-04-13 09:52:38 +02:00
Louis Chemineau
37f1c8640e
Add settings to ignore second display name in search
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-04-12 17:27:59 +02:00
Maxence Lange
d70d90702f
Merge pull request #31907 from nextcloud/enh/noid/tag-remote-as-globalscale
...
confirm user is internal to globalscale
2022-04-12 11:10:36 -01:00
Maxence Lange
10eafd70c8
confirm user is internal to globalscale
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2022-04-12 09:11:05 -01:00
Louis Chemineau
0e06ee68c0
Add settings to not match userID during full match
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-04-06 15:41:41 +02:00
Carl Schwan
7ecb65f725
Add check before sending email that email address is valid
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-11 20:59:44 +01:00
Carl Schwan
d4a5e480ab
Fix idn emails not working in shares
...
Fix #30595
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-11 15:44:25 +01:00
Julius Härtl
d73fe0ccd9
Merge pull request #29879 from nextcloud/bugfix/noid/sharing-enumeration-addressbooks
2021-12-21 08:11:04 +01:00
Joas Schilling
f1a6668cc2
Make psalm more happy
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:25:50 +01:00
Joas Schilling
93b77f54bd
Fix docs to make Psalm happier
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:19:32 +01:00