I have implemented Laratrust role system in my Laravel application. Now, I'm rendering all available roles to a superadministrator in order to add new permissions or delete them from a specific role.
Here's my AclController
:
public function index()
{
$roles = Role::all();
$permissions = Permission::all();
$temp = array();
foreach($permissions as $key => $value) {
array_push($temp, $value['name']);
}
return view('pages.acl.index')->with([ 'roles' => $roles, 'permissions' => $permissions, 'temp' => $temp ]);
}
and the .blade
template where I display the permissions and checkbox:
<div class="tabs-vertical-env">
<ul class="nav tabs-vertical" style="border-right: 1px solid #ddd;">
@foreach ($roles as $role)
<li class="">
<a href="#{{ $role['name'] }}" data-toggle="tab" aria-expanded="false">{{ $role['display_name'] }}</a>
</li>
@endforeach
</ul>
<div class="tab-content">
@foreach ($roles as $role)
<div class="tab-pane" id="{{ $role['name'] }}">
@foreach ($permissions as $permission)
<div class="checkbox checkbox-success">
<input type="checkbox" name="{{ $permission['name'] }}" id="{{ $permission['name'] }}" {{ in_array($role->permissions, $temp) ? 'checked' : '' }} />
<label for="{{ $permission['name'] }}">
{{ $permission['display_name'] }}
</label>
</div>
@endforeach
</div>
@endforeach
</div>
</div>
But unfortunately it doesn't seem to work. What's the workaround?