예제 #1
0
 /**
  * Handle the command.
  *
  * @param RoleRepositoryInterface $roles
  * @return \Anomaly\Streams\Platform\Model\EloquentModel|\Anomaly\UsersModule\Role\Contract\RoleInterface|null
  */
 public function handle(RoleRepositoryInterface $roles)
 {
     if (is_numeric($this->identifier)) {
         return $roles->find($this->identifier);
     }
     if (!is_numeric($this->identifier)) {
         return $roles->findBySlug($this->identifier);
     }
     return null;
 }
 /**
  * Fired when builder is ready to build.
  *
  * @param RoleRepositoryInterface $roles
  * @param BreadcrumbCollection    $breadcrumbs
  * @param MessageBag              $messages
  * @param Redirector              $redirect
  * @return \Illuminate\Http\RedirectResponse
  */
 public function onReady(RoleRepositoryInterface $roles, BreadcrumbCollection $breadcrumbs, MessageBag $messages, Redirector $redirect)
 {
     $this->setEntry($role = $roles->find($this->getEntry()));
     if ($role->getSlug() === 'admin') {
         $messages->warning('anomaly.module.users::warning.modify_admin_role');
         $this->setFormResponse($redirect->to('admin/users/roles'));
         return;
     }
     $breadcrumbs->add($role->getName(), 'admin/users/roles/edit/' . $role->getId());
     $breadcrumbs->add('anomaly.module.users::breadcrumb.permissions', 'admin/users/roles/permissions/' . $role->getId());
 }
예제 #3
0
 /**
  * Handle the command.
  *
  * @param RoleRepositoryInterface $roles
  */
 public function handle(RoleRepositoryInterface $roles)
 {
     if ($role = array_get($this->fieldType->getConfig(), 'role')) {
         if (is_numeric($role)) {
             $role = $roles->find($role);
         }
         if (is_string($role)) {
             $role = $roles->findBySlug($role);
         }
         if ($role) {
             // The role exists so join and limit results to that role's ID.
             $this->query->join('users_users_roles', 'users_users_roles.entry_id', '=', 'users_users.id')->where('users_users_roles.related_id', $role->getId());
         } else {
             // The role doesn't exist so don't return anything.
             $this->query->join('users_users_roles', 'users_users_roles.entry_id', '=', 'users_users.id')->where('users_users_roles.related_id', false);
         }
     }
 }