NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Teams for Laravel

Nastavenia tímu

Každý tím má niekoľko typovaných nastavení, ktoré sa ukladajú cez options-for-laravel. Nenastavené hodnoty sa vrátia na predvolené, takže tím, ktorý na nastavenia nesiahne, sa správa presne ako doteraz:

use RoundlyConsulting\Teams\Enums\JoinPolicy;
use RoundlyConsulting\Teams\Facades\Teams;

Teams::for($team)->settings()
    ->setJoinPolicy(JoinPolicy::Open)    // Open | Request (default) | InviteOnly
    ->setMaxSeats(50)                    // null = unlimited (default)
    ->setDefaultMemberRole('member')     // overrides teams.roles.default for this team
    ->setRequireApprovalToJoin(true);    // hold Open-team requests pending

$settings = Teams::for($team)->settings();
$settings->joinPolicy();              // JoinPolicy enum
$settings->maxSeats();                // ?int
$settings->defaultMemberRole();       // ?string
$settings->requireApprovalToJoin();   // bool
Trieda optionPredvolenéÚčinok
JoinPolicyRequestInviteOnly: joinRequests()->open() vyhodí TeamsException. Open: žiadosť o predvolenú rolu sa automaticky schváli a žiadateľ sa pridá s ňou; žiadosť o inú rolu čaká. Request: každá žiadosť čaká na rozhodnutie.
MaxSeatsnull (bez limitu)Pridanie nového člena vyhodí TeamsException, keď počet aktívnych členov dosiahne limit.
DefaultMemberRolenullRola pri schválení žiadosti bez zadanej roly; inak platí roles.default.
RequireApprovalToJoinfalseŽiadosti do tímu s pravidlom Open nechá čakať namiesto automatického schválenia.

Hodnota null v setMaxSeats() alebo setDefaultMemberRole() uloženú hodnotu odstráni a obnoví predvolenú.

Čítanie a zápis jednej hodnoty

Každé nastavenie je trieda option v RoundlyConsulting\Teams\Options, takže ho môžete adresovať priamo:

use RoundlyConsulting\Teams\Options\MaxSeats;

$team->option(MaxSeats::class)->set(50);

Plný tím

use RoundlyConsulting\Teams\Exceptions\TeamsException;

try {
    Teams::for($team)->members()->add($user, 'member');
} catch (TeamsException $e) {
    // "This team has reached its seat limit of 50."
}

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

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

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.