history = $history; $this->file = $file; $this->content = $content; $this->module = $module; $this->template = $template; } /** * Display form for editing static page * * @param Content $page * * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ public function edit(Content $page) { $statuses = ContentStatuses::getWithTranslations(); // get module ID $module = $this->module->getByHandler($page->moduleHandler); $pageHeading = $this->module->getUpdateContentTitle($module, $page); $templates = $this->template->getForModule($module); $history = $this->history->getStructuredHistoryOf($page); $categories = new Collection(); if (class_exists(ICategory::class)) { $categories = app(ICategory::class)->getForModule($module); } // render view return view('admin.content.edit', [ 'pageHeading' => $pageHeading, 'contentStatuses' => $statuses, 'page' => $page, 'module' => $module, 'categories' => $categories, 'rootPages' => $this->content->getOverview() ->get(), 'templates' => $templates, 'formSectionNames' => $this->module->call($module, 'getExtendedFormSections'), 'formSections' => $this->module->call($module, 'getExtendedFormInputsEdit'), 'historySize' => count($history['changesets']) ]); } /** * Edit static page and save changes into history. * * @param EditContentRequest|Request $request * @param Content $page * * @return \Illuminate\Http\RedirectResponse * @internal param $id */ public function update(Request $request, Content $page) { // edit page Interaction::handle(EditContentInteraction::class, $request->all(), $page); // something was changed, inform user return redirect() ->route('content.overview') ->with('success', trans('admin/contents.successfullyEdited')); } public function order() { $pages = $this->content->getOverview()->get(); return view('admin.content.order', compact('pages')); } public function setOrder(Request $request) { $data = $request->get('page'); foreach ($data as $id => $order) { Content::where('id', $id)->update(['order' => $order]); } // something was changed, inform user return redirect() ->route('content.overview') ->with('success', trans('admin/contents.orderSuccessfullySet')); } }