]> BookStack Code Mirror - bookstack/blobdiff - app/Http/Controllers/PageController.php
Prevent revision encoding issues
[bookstack] / app / Http / Controllers / PageController.php
index 56ea6992c88edde8bd007223ee78681f99fccaad..16a44e4c5434344c321b449480307dfc2493c0f5 100644 (file)
@@ -196,13 +196,19 @@ class PageController extends Controller
         return view('pages/revision', ['page' => $page, 'book' => $book]);
     }
 
+    /**
+     * Restores a page using the content of the specified revision.
+     * @param $bookSlug
+     * @param $pageSlug
+     * @param $revisionId
+     * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
+     */
     public function restoreRevision($bookSlug, $pageSlug, $revisionId)
     {
         $this->checkPermission('page-update');
         $book = $this->bookRepo->getBySlug($bookSlug);
         $page = $this->pageRepo->getBySlug($pageSlug, $book->id);
-        $revision = $this->pageRepo->getRevisionById($revisionId);
-        $page = $this->pageRepo->updatePage($page, $book->id, $revision->toArray());
+        $page = $this->pageRepo->restoreRevision($page, $book, $revisionId);
         Activity::add($page, 'page_restore', $book->id);
         return redirect($page->getUrl());
     }