1
0
mirror of https://github.com/BookStackApp/BookStack.git synced 2025-07-28 17:02:04 +03:00

Fixed inaccessible revisions, added regression tests

Fixes #309
This commit is contained in:
Dan Brown
2017-02-25 12:29:01 +00:00
parent 4a2a539c08
commit 387047f262
5 changed files with 68 additions and 17 deletions

View File

@ -369,10 +369,13 @@ 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,
@ -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;

View File

@ -86,8 +86,7 @@ class EntityRepo
$this->entities = [
'page' => $this->page,
'chapter' => $this->chapter,
'book' => $this->book,
'page_revision' => $this->pageRevision
'book' => $this->book
];
$this->viewService = $viewService;
$this->permissionService = $permissionService;