GeneaLabs\LaravelGovernor\Http\Controllers\RolesController::edit PHP Method

edit() public method

public edit ( $name ) : mixed
$name
return mixed
    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'));
    }