for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Omatech\Mage\Core\Domains\Shared\Traits;
use Omatech\Mage\Core\Domains\Roles\Contracts\RoleInterface;
use Omatech\Mage\Core\Domains\Roles\RoleModel;
trait RolesManager
{
private $roles = [];
abstract public function getRoles();
/**
* @param RoleInterface $role
*
* @throws \Illuminate\Contracts\Container\BindingResolutionException
* @return self
*/
public function assignRole(RoleInterface $role): self
$this->roles = app()->make(RoleModel::class)
->assignRole($this->getRoles(), $role);
return $this;
}
* @param array $roles
public function assignRoles(array $roles): self
->assignRoles($this->getRoles(), $roles);
public function removeRole(RoleInterface $role): self
->removeRole($this->getRoles(), $role);
public function removeRoles(array $roles): self
->removeRoles($this->getRoles(), $roles);