1. Go to this page and download the library: Download jurager/teams library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
jurager / teams example snippets
namespace App\Providers;
use Jurager\Teams\Traits\HasTeams;
class User extends Model {
use HasTeams;
}
// Access the team's owner...
$team->owner
// Get all the team's users, excluding owner
$team->users()
// Get all the team's users, including the owner...
$team->allUsers()
// Determine if the given user is a team member...
$team->hasUser(object $user)
// Adds a user to the team with a specified role by role ID or code
$team->addUser(object $user, string $role_keyword)
// Update the role of a specific user within the team
$team->updateUser(object $user, string $role_keyword)
// Remove the given user from the team.
$team->deleteUser(object $user);
// Get all the abilities belong to the team.
$team->abilities()
// Get all the team's roles.
$team->roles()
// Return the user role object from the team
$team->userRole(object $user)
// Check if the team has a specific role by ID or code or any roles at all
$team->hasRole(int|string|null $keyword)
// Get the role from the team by role id or code
$team->getRole(int|string $keyword)
// Add new role to the team
$team->addRole(string $code, array $permissions, string|null $name, string|null $description)
// Update the role in the team
$team->updateRole(int|string $keyword, array $permissions, string|null $name, string|null $description)
// Deletes the given role from team
$team->deleteRole(int|string $keyword)
// Get all groups of the team.
$team->groups()
// Get team group by its id or code
$team->getGroup(int|string $keyword)
// Add new group to the team
$team->addGroup(string $code, array|null $permissions = [], string|null $name)
// Update the group in the team
$team->updateGroup(int|string $keyword, array|null $permissions, string|null $name)
// Delete group from the team
$team->deleteGroup(int|string $keyword)
// Determine if the team has a member with the given email address...
$team->hasUserWithEmail(array $email)
// Determine if the given user is a team member with the given permission...
$team->userHasPermission(object $user, string|array $permissions, bool $
// Access the team's that a user belongs to...
$user->teams : Illuminate\Database\Eloquent\Collection
// Access all of a user's owned teams...
$user->ownedTeams : Illuminate\Database\Eloquent\Collection
// Access all the team's (including owned teams) that a user belongs to...
$user->allTeams() : Illuminate\Database\Eloquent\Collection
// Determine if a user owns a given team...
$user->ownsTeam(object $team) : bool
// Determine if a user belongs to a given team...
$user->belongsToTeam(object $team) : bool
// Get the role that the user is assigned on the team...
$user->teamRole(object $team) : \Jurager\Teams\Role
// Determine if the user has the given role on the given team...
$user->hasTeamRole(object $team, string|array 'admin', bool $model
$user->teamAbilities(object $team, object $server) : mixed
// Determine if a user has a given ability on certain model...
$user->hasTeamAbility(object $team, string 'server:edit', object $server) : bool
// Add an ability for user to action on certain model, if not found, will create a new one
$user->allowTeamAbility(object $team, string 'server:edit', object $server) : bool
// Forbid an ability for user to action on certain model, used in case if global ability or role allowing this action
$user->forbidTeamAbility(object $team, string 'server:edit', object $server) : bool
// Add new group to the team
$team->addGroup(string $code, array $permissions = [], string|null $name)
// Update the group in the team, if permissions is empty array all exiting permissions will be detached
$team->updateGroup(int|string $keyword, array $permissions => [], string|null $name)
// Delete group from the team
$team->deleteGroup(string $code)
// Get all groups of the team.
$team->groups();
// Check if the team has a specific group by ID or code or any groups at all
$team->hasGroup(int|string|null $keyword)
// Get team group by its code
$group = $team->getGroup(int|string $keyword);
// Get all group users
$group->users();
// Attach users or user to a group
$group->attachUser(Collection|Model $user);
// Detach users or user from group
$group->detachUser(Collection|Model $user);