Skip to content

Commit

Permalink
Merge pull request #46163 from nextcloud/backport/45876/stable29
Browse files Browse the repository at this point in the history
[stable29] fix: Avoid throwing errors for teams are unavailable
  • Loading branch information
kesselb authored Jul 6, 2024
2 parents ff3e951 + a3cec03 commit d4a1710
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions lib/private/Teams/TeamManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ public function hasTeamSupport(): bool {
}

public function getProviders(): array {
if (!$this->hasTeamSupport()) {
return [];
}

if ($this->providers !== null) {
return $this->providers;
}
Expand All @@ -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 [];
}
Expand All @@ -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);
Expand All @@ -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);
Expand Down

0 comments on commit d4a1710

Please sign in to comment.