/** @test */ public function it_updates_a_role() { $this->prepare(); $response = $this->actingAs($this->superAdminUser)->patch('genealabs/laravel-governor/roles/Member', ['_token' => csrf_token(), 'name' => 'Member', 'description' => 'Role for testing.', 'permissions' => ['role' => ["create" => "no", "view" => "any", "inspect" => "no", "edit" => "no", "remove" => "no"], 'entity' => ["create" => "no", "view" => "no", "inspect" => "no", "edit" => "no", "remove" => "no"], 'permission' => ["create" => "no", "view" => "no", "inspect" => "no", "edit" => "no", "remove" => "no"], 'assignment' => ["create" => "no", "view" => "no", "inspect" => "no", "edit" => "no", "remove" => "no"]]]); $role = Role::with('permissions')->find('Member'); $this->assertTrue($this->memberUser->can('view', $role)); }
/** * @return mixed */ public function index() { $assignment = new Assignment(); $this->authorize('view', $assignment); $displayNameField = $this->displayNameField; $users = $this->user->all(); $roles = Role::with('users')->get(); return view('genealabs-laravel-governor::assignments.index', compact('users', 'roles', 'displayNameField', 'userList', 'assignment')); }
/** * @param $name * @return mixed */ public function edit($name) { $role = Role::with('permissions')->find($name); $this->authorize($role); $entities = Entity::all(); $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')); }
public function getAllUsersOfRole($role) { $role = Role::with('users')->find($role); return $role->users; }