addHours(48), function () use ($path) { return Page::where('path', '=', $path) ->with('section.pages.section', 'section.mainSection') ->first(); }); if ($page === null) { abort(404); } if (isset($page->section)) { $subSectionPages = PageResource::collection($page->section->pages); $breadcrumbs = [ 'mainSection' => new ClientBreadcrumbSection($page->section->mainSection), 'subSection' => new ClientBreadcrumbSubSection($page->section), 'page' => new ClientBreadcrumbPage($page), ]; } else { $subSectionPages = null; $breadcrumbs = null; } $seo = $page->seo ?? null; $page = new PageResource($page); $error = $page->code; if ($page->code != 200) { abort($error); } return Inertia::render('Page', compact('page', 'subSectionPages', 'breadcrumbs', 'seo')); } public function getRegisteredPages() { $pages = PageResource::collection(Page::query() ->when(request()->input('search'), function ($query, $search) { $query->where('title', 'like', "%{$search}%"); }) ->where('is_registered', true) ->where('is_visible', true) ->orderBy('id', 'desc') ->paginate(request()->input('perPage', 9)) ->withQueryString()); $filters = [ 'search' => request()->input('search'), ]; return Inertia::render('AdminPanel/Pages/Registered', compact('pages', 'filters')); } }