Commit graph

129 commits

Author SHA1 Message Date
Daniel Calviño Sánchez
a4bf16e779 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-12 21:08:25 +01:00
nfebe
6a1fdf5498 fix: Make TrustedServers optional in RemotePlugin
The federation app is not always installed, causing errors when
TrustedServers is injected as a hard dependency. This change makes
the dependency optional by using nullable types and null-safe
operators, defaulting to false when unavailable.

Modified backport of #55893 which are required for
the stable31 backport to function correctly.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-11-11 12:09:05 +01:00
nfebe
26c452c6ee fix: Include email when searching share suggestions
Signed-off-by: nfebe <fenn25.fn@gmail.com>

[skip ci]
2025-11-11 12:09:05 +01:00
nfebe
75179f9520 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-11-11 12:09:05 +01:00
Ferdinand Thiessen
7d510d14ae
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-10-13 16:16:29 +02:00
Julius Knorr
4308f0019b fix: filter out contacts with invalid email addresses in sharee completion
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-03-28 22:37:07 +01:00
Ferdinand Thiessen
324582729a
fix(lookup-server): disable lookup server for non-global scale setups
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 21:54:06 +01:00
Ferdinand Thiessen
aa7300b53d
fix(lookup-server): do not query data by default
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-11 21:39:33 +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
Joas Schilling
d49ad7ea47
Limit more contact searches
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:58:54 +01:00
Joas Schilling
0f1670be8a
Only limit search in the system address book
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:54:42 +01:00
Joas Schilling
84d37143b0
Only wildcard search if enumeration is allowed
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:54:42 +01:00
Julius Härtl
7b76253aee
Do not clear all results when searching from users address books
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-12-08 09:08:54 +01:00
Côme Chilliet
008b79d808
Fix type errors
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:28:58 +01:00
Arthur Schiwon
27865d03c0
use specific email getter where necessary
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-09 19:23:05 +02:00
Joas Schilling
af03f5d516
Also hide group from direct matches
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-02 09:47:42 +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
e4b5645883
Also make other shares listen to the "Allow sharing with groups"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-05-26 11:19:58 +02:00
Joas Schilling
56ae87c281
Less ILogger
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-27 14:34:32 +02:00
Arthur Schiwon
f8d1ee5cfa
ignore mail shares of related remote share results
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-04-20 14:02:35 +02:00
J0WI
74a7c2eefc Use correct getSystemValue type
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2021-04-12 22:54:50 +02:00
Joas Schilling
cf434d5107
Also limit to user group in case enumeration is enabled for groups and phonenumbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 11:20:30 +01:00
Joas Schilling
9a189bc710
Improve search results when only phonebook-matches can we autocompleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 09:51:31 +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