diff --git a/lib/private/Teams/TeamManager.php b/lib/private/Teams/TeamManager.php index 6651d3ce67652..3775d1cb515bf 100644 --- a/lib/private/Teams/TeamManager.php +++ b/lib/private/Teams/TeamManager.php @@ -52,6 +52,10 @@ public function hasTeamSupport(): bool { } public function getProviders(): array { + if (!$this->hasTeamSupport()) { + return []; + } + if ($this->providers !== null) { return $this->providers; } @@ -78,6 +82,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 []; } @@ -92,6 +100,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); @@ -108,6 +120,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);