X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/70991fc1e54686fb0c50550df8aba2296a75ebb2..refs/pull/474/head:/app/Http/Controllers/PageController.php diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php index 4ed10d61e..9a8525c23 100644 --- a/app/Http/Controllers/PageController.php +++ b/app/Http/Controllers/PageController.php @@ -161,7 +161,7 @@ class PageController extends Controller $pageContent = $this->entityRepo->renderPage($page); $sidebarTree = $this->entityRepo->getBookChildren($page->book); $pageNav = $this->entityRepo->getPageNav($pageContent); - + Views::add($page); $this->setPageTitle($page->getShortName()); return view('pages/show', [ @@ -369,11 +369,14 @@ class PageController extends Controller public function showRevision($bookSlug, $pageSlug, $revisionId) { $page = $this->entityRepo->getBySlug('page', $pageSlug, $bookSlug); - $revision = $this->entityRepo->getById('page_revision', $revisionId, false); + $revision = $page->revisions()->where('id', '=', $revisionId)->first(); + if ($revision === null) { + abort(404); + } $page->fill($revision->toArray()); - $this->setPageTitle(trans('entities.pages_revision_named', ['pageName'=>$page->getShortName()])); - + $this->setPageTitle(trans('entities.pages_revision_named', ['pageName' => $page->getShortName()])); + return view('pages/revision', [ 'page' => $page, 'book' => $page->book, @@ -390,7 +393,10 @@ class PageController extends Controller public function showRevisionChanges($bookSlug, $pageSlug, $revisionId) { $page = $this->entityRepo->getBySlug('page', $pageSlug, $bookSlug); - $revision = $this->entityRepo->getById('page_revision', $revisionId); + $revision = $page->revisions()->where('id', '=', $revisionId)->first(); + if ($revision === null) { + abort(404); + } $prev = $revision->getPrevious(); $prevContent = ($prev === null) ? '' : $prev->html; @@ -423,7 +429,7 @@ class PageController extends Controller } /** - * Exports a page to pdf format using barryvdh/laravel-dompdf wrapper. + * Exports a page to a PDF. * https://github.com/barryvdh/laravel-dompdf * @param string $bookSlug * @param string $pageSlug @@ -433,7 +439,6 @@ class PageController extends Controller { $page = $this->entityRepo->getBySlug('page', $pageSlug, $bookSlug); $pdfContent = $this->exportService->pageToPdf($page); -// return $pdfContent; return response()->make($pdfContent, 200, [ 'Content-Type' => 'application/octet-stream', 'Content-Disposition' => 'attachment; filename="' . $pageSlug . '.pdf'