public function handle() { try { $defaultRoles = $this->config->get('acl.default_roles', []); foreach ($defaultRoles as $roleName) { $newRole = $this->roleManager->createRoleByName($roleName); $this->info(sprintf('Role %s has beed added successfully.', $newRole->getName())); } } catch (\Exception $e) { $this->error($e->getMessage()); } }
/** * @author Morteza Parvini <*****@*****.**> * @param $user * @param array $roles * @return mixed */ public function removeUserRoles($user, array $roles) { $user = $this->getUser($user); // Reterieve role and populate $roles array with role->id foreach ($roles as &$role) { $role = $this->roleManager->getRole($role)->getId(); } // Detach user roles return $user->roles()->detach($roles); }
/** * @param $role * @return bool */ public function checkRoleIsDeletable($role) { $role = $this->roleManager->getRole($role); $defaultRoles = $this->config['default_roles']; return !in_array($role->getName(), $defaultRoles); }