public function edit($name)
{
$role = Role::with('permissions')->find($name);
$this->authorize($role);
$entities = Entity::whereNotIn('name', ['permission', 'entity'])->get();
$actions = Action::all();
$ownerships = Ownership::all();
$permissionMatrix = [];
foreach ($entities as $entity) {
foreach ($actions as $action) {
$selectedOwnership = 'no';
foreach ($role->permissions as $permissioncheck) {
if ($permissioncheck->entity->name === $entity->name && $permissioncheck->action->name === $action->name) {
$selectedOwnership = $permissioncheck->ownership->name;
}
}
$permissionMatrix[$entity->name][$action->name] = $selectedOwnership;
}
}
$ownershipOptions = array_merge(['no' => 'no'], $ownerships->lists('name', 'name')->toArray());
return view('genealabs-laravel-governor::roles.edit', compact('role', 'permissionMatrix', 'ownershipOptions'));
}