$this->roles->all(), 'permissions' => $this->permissions->all(), ]); } public function create(): View { return view('permission.add-edit', ['edit' => false]); } public function store(CreatePermissionRequest $request): RedirectResponse { $this->permissions->create($request->all()); return redirect()->route('permissions.index') ->withSuccess(__('Permission created successfully.')); } public function edit(Permission $permission): View { return view('permission.add-edit', [ 'edit' => true, 'permission' => $permission, ]); } public function update(Permission $permission, UpdatePermissionRequest $request): RedirectResponse { $this->permissions->update($permission->id, $request->all()); return redirect()->route('permissions.index') ->withSuccess(__('Permission updated successfully.')); } /** * @throws NotFoundHttpException */ public function destroy(Permission $permission) { if (! $permission->removable) { throw new NotFoundHttpException; } $this->permissions->delete($permission->id); return redirect()->route('permissions.index') ->withSuccess(__('Permission deleted successfully.')); } }