X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/8b4bfa4d780a3d586d0ad3dc64ff11822a0c3fbf..refs/pull/2115/head:/app/Http/Controllers/BookExportController.php diff --git a/app/Http/Controllers/BookExportController.php b/app/Http/Controllers/BookExportController.php index cfa3d6a3a..a92d94cc9 100644 --- a/app/Http/Controllers/BookExportController.php +++ b/app/Http/Controllers/BookExportController.php @@ -2,6 +2,7 @@ namespace BookStack\Http\Controllers; +use BookStack\Entities\Managers\BookContents; use BookStack\Entities\ExportService; use BookStack\Entities\Repos\BookRepo; use Throwable; @@ -53,4 +54,24 @@ class BookExportController extends Controller $textContent = $this->exportService->bookToPlainText($book); return $this->downloadResponse($textContent, $bookSlug . '.txt'); } + + /** + * Export a book as a markdown file. + */ + public function markdown(string $bookSlug) + { + $book = $this->bookRepo->getBySlug($bookSlug); + $textContent = $this->exportService->bookToMarkdown($book); + return $this->downloadResponse($textContent, $bookSlug . '.md'); + } + + /** + * Export a book as a zip file, made of markdown files. + */ + public function zip(string $bookSlug) + { + $book = $this->bookRepo->getBySlug($bookSlug); + $filename = $this->exportService->bookToZip($book); + return response()->download($filename); + } }