X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/1c43602f4bed60a84f47735ca8bc4a399018e013..a99cbcfe121f33486f5048c048ffee29decaa479:/app/Http/Controllers/Api/PageExportApiController.php diff --git a/app/Http/Controllers/Api/PageExportApiController.php b/app/Http/Controllers/Api/PageExportApiController.php index 7cee2fbe7..f2edffba3 100644 --- a/app/Http/Controllers/Api/PageExportApiController.php +++ b/app/Http/Controllers/Api/PageExportApiController.php @@ -13,6 +13,7 @@ class PageExportApiController extends ApiController public function __construct(ExportFormatter $exportFormatter) { $this->exportFormatter = $exportFormatter; + $this->middleware('can:content-export'); } /** @@ -25,7 +26,7 @@ class PageExportApiController extends ApiController $page = Page::visible()->findOrFail($id); $pdfContent = $this->exportFormatter->pageToPdf($page); - return $this->downloadResponse($pdfContent, $page->slug . '.pdf'); + return $this->download()->directly($pdfContent, $page->slug . '.pdf'); } /** @@ -38,7 +39,7 @@ class PageExportApiController extends ApiController $page = Page::visible()->findOrFail($id); $htmlContent = $this->exportFormatter->pageToContainedHtml($page); - return $this->downloadResponse($htmlContent, $page->slug . '.html'); + return $this->download()->directly($htmlContent, $page->slug . '.html'); } /** @@ -49,7 +50,7 @@ class PageExportApiController extends ApiController $page = Page::visible()->findOrFail($id); $textContent = $this->exportFormatter->pageToPlainText($page); - return $this->downloadResponse($textContent, $page->slug . '.txt'); + return $this->download()->directly($textContent, $page->slug . '.txt'); } /** @@ -60,6 +61,6 @@ class PageExportApiController extends ApiController $page = Page::visible()->findOrFail($id); $markdown = $this->exportFormatter->pageToMarkdown($page); - return $this->downloadResponse($markdown, $page->slug . '.md'); + return $this->download()->directly($markdown, $page->slug . '.md'); } }