diff --git a/lib/private/Teams/TeamManager.php b/lib/private/Teams/TeamManager.php index 4fe0e60b7d12d..3d5f9f6d2a2b2 100644 --- a/lib/private/Teams/TeamManager.php +++ b/lib/private/Teams/TeamManager.php @@ -36,6 +36,10 @@ public function hasTeamSupport(): bool { } public function getProviders(): array { + if (!$this->hasTeamSupport()) { + return []; + } + if ($this->providers !== null) { return $this->providers; } @@ -62,6 +66,10 @@ public function getProvider(string $providerId): ITeamResourceProvider { } public function getSharedWith(string $teamId, string $userId): array { + if (!$this->hasTeamSupport()) { + return []; + } + if ($this->getTeam($teamId, $userId) === null) { return []; } @@ -76,6 +84,10 @@ public function getSharedWith(string $teamId, string $userId): array { } public function getTeamsForResource(string $providerId, string $resourceId, string $userId): array { + if (!$this->hasTeamSupport()) { + return []; + } + $provider = $this->getProvider($providerId); return array_values(array_filter(array_map(function ($teamId) use ($userId) { $team = $this->getTeam($teamId, $userId); @@ -92,6 +104,10 @@ public function getTeamsForResource(string $providerId, string $resourceId, stri } private function getTeam(string $teamId, string $userId): ?Circle { + if (!$this->hasTeamSupport()) { + return null; + } + try { $federatedUser = $this->circlesManager->getFederatedUser($userId, Member::TYPE_USER); $this->circlesManager->startSession($federatedUser);