pageRepo = $pageRepo; } /** * Show the page * * @param $slug * * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ public function show($slug) { /** @var \App\Models\Page $page */ $page = $this->pageRepo->findWhere(['slug' => $slug])->first(); if (!$page) { throw new PageNotFound(new Exception('Page not found')); } if (!$page->public && !Auth::check()) { throw new Unauthorized(new Exception('You must be logged in to view this page')); } return view('pages.index', ['page' => $page]); } }