---
title: "Výnimky — Teams for Laravel | Roundly"
description: "Typované výnimky pre pozvánky, žiadosti a členov — vypršané, vyčerpané, zrušené, už vybavené — všetky odvodené od TeamsException."
url: https://roundly-consulting.com/sk/open-source/navody/teams-for-laravel/vynimky
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Teams for Laravel](https://roundly-consulting.com/sk/open-source/navody/teams-for-laravel.md)

# Výnimky

Všetky výnimky sú v RoundlyConsulting\\Teams\\Exceptions a rozširujú TeamsException, ktorá rozširuje RuntimeException. Zachyťte základný typ pre akúkoľvek chybu balíka, alebo konkrétny pre cielenú obsluhu:

| Výnimka | Vyhadzuje | Kedy |
| --- | --- | --- |
| `InviteExpiredException` | AcceptInviteAction | Platnosť pozvánky (expires\_at) vypršala. |
| `InviteExhaustedException` | AcceptInviteAction | uses dosiahlo max\_uses — aj pri už spotrebovanej jednorazovej pozvánke. |
| `InviteEmailMismatchException` | AcceptInviteAction | Pozvánka na konkrétny e-mail dostane iný alebo žiadny e-mail (bez ohľadu na veľkosť písmen). |
| `InviteNotFoundException` | `Teams::invites()->accept()` | Kódu nezodpovedá žiadna pozvánka, pozvánka bola zrušená alebo jej tím zmazaný. |
| `InviteNotFoundException` | `for($t)->invites()->resend() / revoke()` | Pozvánka patrí inému tímu. |
| `JoinRequestNotFoundException` | `for($t)->joinRequests()->approve() / deny()` | Žiadosť patrí inému tímu. |
| `JoinRequestNotPendingException` | `for($t)->joinRequests()->approve() / deny()` | Žiadosť už bola schválená, zamietnutá alebo vypršala — aj keď ju súčasne vybavil niekto iný. |
| `MemberNotFoundException` | `for($t)->members()->changeRole()` | Model nie je členom tímu. |
| `TeamsException` | `joinRequests()->open(), members()->add(), transferOwnershipTo()` | Základná trieda. Priamo ju vyhodí žiadosť do tímu len na pozvánky, žiadosť od aktívneho člena a dosiahnutý limit miest. |

```php
use RoundlyConsulting\Teams\Exceptions\InviteEmailMismatchException;
use RoundlyConsulting\Teams\Exceptions\InviteExhaustedException;
use RoundlyConsulting\Teams\Exceptions\InviteExpiredException;
use RoundlyConsulting\Teams\Exceptions\InviteNotFoundException;
use RoundlyConsulting\Teams\Exceptions\TeamsException;

try {
    Teams::invites()->accept($code, $user, email: $user->email);
} catch (InviteExpiredException) {
    // the link has expired
} catch (InviteExhaustedException) {
    // no seats left, or a single-use link already consumed
} catch (InviteEmailMismatchException) {
    // the wrong recipient
} catch (InviteNotFoundException) {
    // an unknown code, a revoked invite or a deleted team
} catch (TeamsException $e) {
    // any other teams error — e.g. a seat limit
}
```

Kontroly pozvánky idú v poradí vypršaná → vyčerpaná → zrušená → nezhodný e-mail → zmazaný tím, takže zachytíte prvú podmienku, ktorá zlyhá.

## Preložené hlášky

Hlášky výnimiek pozvánok, žiadostí, členstiev, limitu miest a konfigurácie intervalov pochádzajú z prekladov balíka (menný priestor teams::) a riadia sa jazykom aplikácie — balík obsahuje angličtinu a slovenčinu:

| Kľúč | Predvolená anglická hláška |
| --- | --- |
| `teams::errors.already_member` | `The given model is already a member of team #:team.` |
| `teams::errors.invite_expired` | `The invite ":code" has expired.` |
| `teams::errors.invite_email_mismatch` | `This invite is addressed to ":email".` |
| `teams::errors.invite_exhausted` | `The invite ":code" has reached its usage limit.` |
| `teams::errors.invite_not_found` | `No invite was found for the code ":code".` |
| `teams::errors.invite_team_missing` | `The team of invite #:id no longer exists.` |
| `teams::errors.invite_unavailable` | `Invite #:id is no longer available.` |
| `teams::errors.invite_not_in_team` | `Invite #:id does not belong to this team.` |
| `teams::errors.join_request_not_pending` | `Join request #:id has already been resolved.` |
| `teams::errors.join_request_not_in_team` | `Join request #:id does not belong to this team.` |
| `teams::errors.member_not_found` | `The given model is not a member of team #:team.` |
| `teams::errors.join_policy_forbids_requests` | `This team is invite-only and does not accept join requests.` |
| `teams::errors.invalid_config_value` | `Configuration value [:key] must be :expected, [:given] given.` |
| `teams::errors.config_expectations.positive_interval` | `a positive interval such as "7 days"` |
| `teams::errors.config_expectations.non_negative_interval` | `a zero or positive interval such as "30 days"` |
| `teams::errors.max_seats_reached` | `This team has reached its seat limit (:count seat).\|This team has reached its seat limit (:count seats).` |

max\_seats\_reached sa vykresľuje cez trans\_choice(): angličtina používa tvar singular|plural, slovenčina {0} …|{1} …|\[2,4\] …|\[5,\*\] …. Prepísaný riadok môže zostať jediný, bez | — použije sa tak, ako je.

```bash
php artisan vendor:publish --tag="teams-translations"
# edit lang/vendor/teams/en/errors.php or lang/vendor/teams/sk/errors.php, or add other locales
```

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/teams-for-laravel.md)
