middleware(['admin', '2fa']); } public function index() { $data = [ 'news' => News::all(), //News::where('lvl', 1)->get(), ]; return view('cms.news.index', $data); } public function detail($id) { if ($id === "new") { $news = new News(); $id = 'new'; $news->status = 1; $news->content_new = ""; } else { $news = News::findOrFail($id); $id = $news->id; } $data = [ 'news' => $news, 'id' => $id, 'lfm_helper' => app(Lfm::class), ]; return view('cms.news.detail', $data); } public function store($id) { $data = Request::all(); if ($id === "new") { $news = new News(); $news->model = 'news'; $news->owner_second = 0; $news->show_in_navi = 1; $news->catalog_id = 1; } else { $news = News::findOrFail($id); } $news->title = $data['title']; $news->status = isset($data['status']) ? true : false; $news->slug = Str::slug($data['slug']); $news->date = $data['date']; $news->content_new = $data['content_new']; $news->box_body = $data['image']; $news->description = $data['description']; $news->pagetitle = $data['pagetitle']; $news->keywords = $data['keywords']; $news->order = (new Carbon($news->date))->format('Ymd') * -1; $root_news = News::where('cms_settings', 'news_root')->first(); if ($id != $root_news->id) { //root ID = 3126 $news->lvl = 1; $news->owner = $root_news->id; $news->parent_id = $root_news->id; $news->tree_root = $root_news->id; if ($first_news = $root_news->children->first()) { $news->lft = $first_news->lft; $news->rgt = $first_news->rgt; } else { $news->lft = $root_news->lft + 1; $news->rgt = $root_news->lft + 2; } } $news->save(); \Session()->flash('alert-save', '1'); return redirect(route('cms_news_detail', [$news->id])); } public function delete($id) { $news = News::findOrFail($id); //TODO //check for delete, only delete lvl 2 .,...? if ($news->lvl != 1) { abort(404); die(); } $news->delete(); \Session()->flash('alert-success', __('News gelöscht')); return redirect(route('cms_news')); } }