/** * {@inheritdoc} */ public function handle(ServerRequestInterface $request) { $this->assertAdminAndSudo($request); $body = $request->getParsedBody(); $permission = array_get($body, 'permission'); $groupIds = array_get($body, 'groupIds'); Permission::where('permission', $permission)->delete(); Permission::insert(array_map(function ($groupId) use($permission) { return ['permission' => $permission, 'group_id' => $groupId]; }, $groupIds)); return new EmptyResponse(204); }
protected function seedPermissions() { $permissions = [[Group::GUEST_ID, 'viewDiscussions'], [Group::MEMBER_ID, 'startDiscussion'], [Group::MEMBER_ID, 'discussion.reply'], [static::MOD_GROUP_ID, 'discussion.delete'], [static::MOD_GROUP_ID, 'discussion.deletePosts'], [static::MOD_GROUP_ID, 'discussion.editPosts'], [static::MOD_GROUP_ID, 'discussion.rename']]; foreach ($permissions as &$permission) { $permission = ['group_id' => $permission[0], 'permission' => $permission[1]]; } Permission::insert($permissions); }
protected function seedPermissions() { $permissions = [[2, 'viewDiscussions'], [3, 'startDiscussion'], [3, 'discussion.reply'], [4, 'discussion.delete'], [4, 'discussion.deletePosts'], [4, 'discussion.editPosts'], [4, 'discussion.rename']]; foreach ($permissions as &$permission) { $permission = ['group_id' => $permission[0], 'permission' => $permission[1]]; } Permission::insert($permissions); }