diff --git a/lib/private/Collaboration/Collaborators/LookupPlugin.php b/lib/private/Collaboration/Collaborators/LookupPlugin.php index d05f939797c..b2eb98f5125 100644 --- a/lib/private/Collaboration/Collaborators/LookupPlugin.php +++ b/lib/private/Collaboration/Collaborators/LookupPlugin.php @@ -20,8 +20,6 @@ use OCP\Share\IShare; use Psr\Log\LoggerInterface; class LookupPlugin implements ISearchPlugin { - /** @var string remote part of the current user's cloud id */ - private string $currentUserRemote; public function __construct( private readonly IConfig $config, @@ -33,7 +31,6 @@ class LookupPlugin implements ISearchPlugin { private readonly GlobalScaleConfig $globalScaleConfig, ) { $currentUserCloudId = $userSession->getUser()->getCloudId(); - $this->currentUserRemote = $cloudIdManager->resolveCloudId($currentUserCloudId)->getRemote(); } #[\Override] @@ -77,9 +74,6 @@ class LookupPlugin implements ISearchPlugin { ]); continue; } - if ($this->currentUserRemote === $remote) { - continue; - } $name = $lookup['name']['value'] ?? ''; $label = empty($name) ? $lookup['federationId'] : $name . ' (' . $lookup['federationId'] . ')'; $result[] = [ diff --git a/lib/private/Collaboration/Collaborators/Search.php b/lib/private/Collaboration/Collaborators/Search.php index fefc7722a2f..0b793c8f9dc 100644 --- a/lib/private/Collaboration/Collaborators/Search.php +++ b/lib/private/Collaboration/Collaborators/Search.php @@ -47,6 +47,10 @@ class Search implements ISearch { foreach ($this->pluginList[$type] as $plugin) { /** @var ISearchPlugin $searchPlugin */ $searchPlugin = $this->container->resolve($plugin); + if ($searchPlugin instanceof UserPlugin && $lookup) { + // we are in GlobalScale, we ignore local accounts and prefer the result from lookup + continue; + } $hasMoreResults = $searchPlugin->search($search, $limit, $offset, $searchResult) || $hasMoreResults; } }