Commit Graph

49 Commits (3bdb3442242aba93d0fae6181861baeb60b1514d)

Author SHA1 Message Date
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 +07:00
Louis 77194d5232
Merge pull request #54102 from nextcloud/ensure-cloud-key
fix: Ensure CLOUD key exists before resolving Cloud ID
2025-10-17 18:20:59 +07: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 +07: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 +07: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 +07: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 +07:00
Andy Scherzinger dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +07: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 +07: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 +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
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 +07:00
Joas Schilling 269df904a3
Improve email search results
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-12-09 22:40:47 +07: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 +07: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 +07: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 +07: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 +07:00
Julius Härtl d73fe0ccd9
Merge pull request #29879 from nextcloud/bugfix/noid/sharing-enumeration-addressbooks 2021-12-21 08:11:04 +07:00
Joas Schilling f1a6668cc2
Make psalm more happy
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:25:50 +07:00
Joas Schilling 93b77f54bd
Fix docs to make Psalm happier
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:19:32 +07: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 +07: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 +07: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 +07:00
John Molakvoæ (skjnldsv) 215aef3cbd
Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +07: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 +07:00
Joas Schilling 236aa194e2
Restrict autocompletion also based on the phonebook known users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:19:55 +07:00
Julius Härtl 131fcac91e
Show unique displayname context in the sharing input
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-14 11:14:59 +07:00
Joas Schilling 89ed2c37bf
Update share type constant usage
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 16:49:16 +07:00
Christoph Wurst cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +07:00
Julius Härtl 6709833dc7
Use paginated search for contacts
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-23 19:08:16 +07:00
Christoph Wurst caff1023ea
Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +07:00
Christoph Wurst 41b5e5923a
Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +07:00
Julius Härtl c97ab39acb Limit user search in Collaborators plugins
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-20 10:43:56 +07:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +07:00
Julius Härtl a0d759b324
Add uuid/name entry to Remote/MailPlugin tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:36 +07:00
Julius Härtl cb463d73d5
Add name field to mail and remote results
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:36 +07:00
Julius Härtl 61af607525
Make enhancing entries with type property optional
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:35 +07:00
Julius Härtl 870e01518d
Add type to Remote and Mail plugins
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:34 +07:00
Julius Härtl a1c6e44700
Add collaborators uuid to properly render the avatar and for later grouping
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:33 +07:00
Arthur Schiwon f42c29ebac
the FN is optional, carrying the displayname if present
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-03-14 14:30:45 +07:00
Joas Schilling 882096653e
Fix calculation if there are more results
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-08 16:22:16 +07:00
Joas Schilling e05f338ff1
Add the users result only when non empty so tests stay the same
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-02 11:42:57 +07:00
Joas Schilling 12420aef42
Also array_slice wide email matches of local users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-01 12:18:44 +07:00
blizzz 8e5120ce66
Merge pull request #8206 from nextcloud/bugfix/noid/fix-collaboration-result-size
Better result handling of email search
2018-02-20 23:02:53 +07:00
Joas Schilling b30e035e25
Better result handling of email search
1. Local users should not be returned when searching for empty string
2. The limit of the response should be respected

Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-20 17:38:32 +07:00
Joas Schilling cf216ecff2
Filter out the current user when searching for emails too
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-13 17:32:58 +07:00
Tobia De Koninck 9d60f7fc64 Don't show users which e-mail address match if they belong to a group we may share with
Signed-off-by: Tobia De Koninck <tobia@ledfan.be>
2017-12-15 19:09:46 +07:00
Arthur Schiwon 3d1d03a511
split off getEmail tests
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-09-26 23:10:24 +07:00
Arthur Schiwon 4a96e22258
don't keep result types hard coded
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-09-26 23:10:23 +07:00
Arthur Schiwon ea3ac4e656
Splits off the logic from sharees endpoint thus making it available from
within Nc/via PHP.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-09-26 23:10:17 +07:00