From 8e777e58f62a8c176b2c67170d4ffb11b371a56a Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 25 Aug 2023 09:35:21 +0200 Subject: [PATCH] wait #6214 @0.5 --- .../FluidbookPublication/CompositionOperation.php | 15 ++++++++++----- app/Models/FluidbookDocument.php | 1 + .../views/fields/fluidbook_composition.blade.php | 6 ++++++ 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/Admin/Operations/FluidbookPublication/CompositionOperation.php b/app/Http/Controllers/Admin/Operations/FluidbookPublication/CompositionOperation.php index 87a4e4362..dc2e1af14 100644 --- a/app/Http/Controllers/Admin/Operations/FluidbookPublication/CompositionOperation.php +++ b/app/Http/Controllers/Admin/Operations/FluidbookPublication/CompositionOperation.php @@ -33,7 +33,7 @@ trait CompositionOperation protected function getPageText($fluidbook_id, $type, $page) { - $types = ['texts' => FluidbookDocument::TEXT_PLAIN, 'index' => FluidbookDocument::TEXT_INDEX]; + $types = ['texts' => FluidbookDocument::TEXT_PLAIN, 'index' => FluidbookDocument::TEXT_INDEX, 'layout' => FluidbookDocument::TEXT_LAYOUT]; if (!isset($types[$type])) { abort(404, 'Text type not found'); } @@ -41,10 +41,15 @@ trait CompositionOperation abort(401); } /** @var FluidbookPublication $fb */ - $fb = FluidbookPublication::find($fluidbook_id); - $document = $fb->getDocument($page); - $path = $document->getTextFile($page, $types[$type], $fb->textExtraction, $fb->ignoreSearchSeparators); - return response(Gzip::file_get_contents($path), 200, ['content-type' => 'text/plain']); + $fb = FluidbookPublication::withoutGlobalScopes()->find($fluidbook_id); + $contentType = 'text/plain'; + if ($type == FluidbookDocument::TEXT_LAYOUT) { + $path = $fb->getHightlightFile($page); + $contentType = 'application/json'; + } else { + $path = $fb->getTextFile($page, $types[$type]); + } + return response(Gzip::file_get_contents($path), 200, ['content-type' => $contentType]); } diff --git a/app/Models/FluidbookDocument.php b/app/Models/FluidbookDocument.php index 64db70bd8..5725777c7 100644 --- a/app/Models/FluidbookDocument.php +++ b/app/Models/FluidbookDocument.php @@ -38,6 +38,7 @@ class FluidbookDocument extends ToolboxModel const TEXT_PLAIN = 'p'; const TEXT_INDEX = 'i'; const TEXT_HTML = 'h'; + const TEXT_LAYOUT = 'layout'; public function setFields() { diff --git a/resources/views/fields/fluidbook_composition.blade.php b/resources/views/fields/fluidbook_composition.blade.php index d331d00ea..896d0a88b 100644 --- a/resources/views/fields/fluidbook_composition.blade.php +++ b/resources/views/fields/fluidbook_composition.blade.php @@ -474,6 +474,12 @@ callback: function (key, opt) { window.open('/fluidbook-publication/' + {{$entry->id}} + '/index/' + ($(opt.$trigger[0]).index() + 1) + '.txt'); }, + }, + seelayout: { + name: "{{__('Informations pour le surlignage')}}", + callback: function (key, opt) { + window.open('/fluidbook-publication/' + {{$entry->id}} + '/layout/' + ($(opt.$trigger[0]).index() + 1) + '.txt'); + }, } } } -- 2.39.5