Marcello Pato
Marcello Pato

Reputation: 494

Laratrust and users

I do have an app in Laravel 5.5 using Laratrust last version to give roles and permissions.

Now, I want to let and Administrator lists only the users he has created and let the Superadministrator see ALL users.

Let's see some code:

UserController.php

public function index()
    {
      $id = Auth::user()->id;

      if ($id = Laratrust::hasRole('superadministrator')) {
        $users = User::orderBy('id', 'desc')->paginate(10);
      }

      $users = User::where('id', '=', $id)->orderBy('id', 'desc')->paginate(10);
      return view('manage.users.index')->withUsers($users);
    }

Manage navbar:

@if(Laratrust::hasRole('superadministrator|administrator'))
      <li><a href="{{route('users.index')}}" class="{{Nav::isResource('users')}}">Usuários</a></li>
      <li>
        <a class="has-submenu {{Nav::hasSegment(['roles', 'permissions'], 2)}}">Cargos &amp; Permissões</a>
        <ul class="submenu">
          <li><a href="{{route('roles.index')}}" class="{{Nav::isResource('roles')}}">Cargos</a></li>
          <li><a href="{{route('permissions.index')}}" class="{{Nav::isResource('permissions')}}">Permissões</a></li>
        </ul>
      </li>
      @endif

Any ideas, please?

Upvotes: 0

Views: 1180

Answers (1)

Eder Soares
Eder Soares

Reputation: 149

You are overwriting the $users variable in controller

Upvotes: 1

Related Questions