public function GET_page($key = 'Main') { $page = PageRepository::getPage($key); if ($page->isTitle($key)) { // 이미 존재하는 문서인데 slug가 아니라 title로 들어왔다면 redirect 한다. return redirect("/pages/{$page->slug}"); } PageRepository::setMetaTags($page); return view('ncells::pages.pages.view', ['page' => $page]); }
public function GET_page_compare($key, $left, $right) { $page = PageRepository::getPage($key); if (!$page->exists()) { // 존재하지 않는 문서이므로 생성 권장 return redirect("/admin/pages/{$key}"); } if ($page->isTitle($key)) { // 이미 존재하는 문서인데 slug가 아니라 title로 들어왔다면 slug로 바꿔서 redirect 한다. return redirect("/admin/pages/{$page->slug}/compare/{$left}/{$right}"); } $l_page = PageRepository::getRevPage($page->id, $left); $r_page = PageRepository::getRevPage($page->id, $right); if (!$l_page || !$r_page) { // L 과 R 중 하나가 revision 이 없으므로 문서로 이동 return redirect("/admin/pages/{$page->slug}"); } PageRepository::setMetaTags($page); $diff = PageRepository::getDiffHtml($l_page->content, $r_page->content); return view('ncells::pages.pages.admin.compare', ['page' => $page, 'rendered_diff' => $diff]); }