@@ -34,6 +34,7 @@ public function __construct(
3434 */
3535 public function index (Request $ request , string $ bookSlug , string $ pageSlug )
3636 {
37+ $ this ->checkPermission (Permission::RevisionViewAll);
3738 $ page = $ this ->pageQueries ->findVisibleBySlugsOrFail ($ bookSlug , $ pageSlug );
3839 $ listOptions = SimpleListOptions::fromRequest ($ request , 'page_revisions ' , true )->withSortOptions ([
3940 'id ' => trans ('entities.pages_revisions_sort_number ' )
@@ -65,6 +66,8 @@ public function index(Request $request, string $bookSlug, string $pageSlug)
6566 */
6667 public function show (string $ bookSlug , string $ pageSlug , int $ revisionId )
6768 {
69+ $ this ->checkPermission (Permission::RevisionViewAll);
70+
6871 $ page = $ this ->pageQueries ->findVisibleBySlugsOrFail ($ bookSlug , $ pageSlug );
6972 /** @var ?PageRevision $revision */
7073 $ revision = $ page ->revisions ()->where ('id ' , '= ' , $ revisionId )->first ();
@@ -94,6 +97,8 @@ public function show(string $bookSlug, string $pageSlug, int $revisionId)
9497 */
9598 public function changes (string $ bookSlug , string $ pageSlug , int $ revisionId )
9699 {
100+ $ this ->checkPermission (Permission::RevisionViewAll);
101+
97102 $ page = $ this ->pageQueries ->findVisibleBySlugsOrFail ($ bookSlug , $ pageSlug );
98103 /** @var ?PageRevision $revision */
99104 $ revision = $ page ->revisions ()->where ('id ' , '= ' , $ revisionId )->first ();
@@ -130,6 +135,7 @@ public function changes(string $bookSlug, string $pageSlug, int $revisionId)
130135 public function restore (string $ bookSlug , string $ pageSlug , int $ revisionId )
131136 {
132137 $ page = $ this ->pageQueries ->findVisibleBySlugsOrFail ($ bookSlug , $ pageSlug );
138+ $ this ->checkPermission (Permission::RevisionViewAll);
133139 $ this ->checkOwnablePermission (Permission::PageUpdate, $ page );
134140
135141 $ page = $ this ->pageRepo ->restoreRevision ($ page , $ revisionId );
@@ -145,6 +151,7 @@ public function restore(string $bookSlug, string $pageSlug, int $revisionId)
145151 public function destroy (string $ bookSlug , string $ pageSlug , int $ revId )
146152 {
147153 $ page = $ this ->pageQueries ->findVisibleBySlugsOrFail ($ bookSlug , $ pageSlug );
154+ $ this ->checkPermission (Permission::RevisionViewAll);
148155 $ this ->checkOwnablePermission (Permission::PageDelete, $ page );
149156
150157 $ revision = $ page ->revisions ()->where ('id ' , '= ' , $ revId )->first ();
0 commit comments