From a5cf6b527cfe22e5f96cbd15fccddde6fe87251d Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 23 Jan 2026 15:25:54 +0100 Subject: [PATCH] wip #7961 @0:10 --- app/Fluidbook/Compiler/Accessibility.php | 4 ++-- app/Fluidbook/Compiler/Articles.php | 2 +- app/Fluidbook/Link/Custom/WescoLink.php | 2 +- app/Jobs/FluidbookImagesPreprocess.php | 12 ++++++++---- app/Models/Traits/PublicationSettings.php | 1 + 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/app/Fluidbook/Compiler/Accessibility.php b/app/Fluidbook/Compiler/Accessibility.php index f5e1355d9..7bb0937e8 100644 --- a/app/Fluidbook/Compiler/Accessibility.php +++ b/app/Fluidbook/Compiler/Accessibility.php @@ -132,7 +132,7 @@ trait Accessibility protected function _azureTTS($text, $locale, $gender, $voiceName, $output) { - if(!$text){ + if (!$text) { return; } $api = new \Cubist\Azure\TTS\Api(env('AZURE_TTS_API_KEY')); @@ -162,7 +162,7 @@ trait Accessibility $res = ''; } - if (!$ocr) { + if (!$this->getFluidbook()->accessibility_ocr_assets || !$ocr) { return $res; } diff --git a/app/Fluidbook/Compiler/Articles.php b/app/Fluidbook/Compiler/Articles.php index dbe813d8e..96be09778 100644 --- a/app/Fluidbook/Compiler/Articles.php +++ b/app/Fluidbook/Compiler/Articles.php @@ -241,7 +241,7 @@ trait Articles $this->vdir->copy($filepath, 'data/articles/' . $file); $legend = (string)$child; $caption = $legend ? '
' . $legend . '
' : ''; - if (file_exists($filepath)) { + if (file_exists($filepath) && !is_dir($filepath)) { $dim = getimagesize($filepath); } else { $dim = [0 => 1024, 1 => 10]; diff --git a/app/Fluidbook/Link/Custom/WescoLink.php b/app/Fluidbook/Link/Custom/WescoLink.php index a5b965e76..b11689185 100644 --- a/app/Fluidbook/Link/Custom/WescoLink.php +++ b/app/Fluidbook/Link/Custom/WescoLink.php @@ -8,7 +8,7 @@ class WescoLink extends CustomLink { public static function _getURL($to,$type='',$default=null) { - return self::_getURLOfType($to,'wesco'); + return static::_getURL($to, 'wesco'); } } diff --git a/app/Jobs/FluidbookImagesPreprocess.php b/app/Jobs/FluidbookImagesPreprocess.php index 144057729..60e71cfcd 100644 --- a/app/Jobs/FluidbookImagesPreprocess.php +++ b/app/Jobs/FluidbookImagesPreprocess.php @@ -85,13 +85,17 @@ class FluidbookImagesPreprocess extends Base $this->getFile($page, $settings->imageFormat, 'thumb'); } - $this->jobs = array_merge($this->jobs, LinksData::ocrLinksImages($this->book, $this->_sync, false)); + if($this->book->accessibility_ocr_assets) { + $this->jobs = array_merge($this->jobs, LinksData::ocrLinksImages($this->book, $this->_sync, false)); + } while (true) { if ($this->_checkJobs()) { - dispatch(function () { - LinksData::ocrLinksImages($this->book, true, true); - }); + if($this->book->accessibility_ocr_assets) { + dispatch(function () { + LinksData::ocrLinksImages($this->book, true, true); + }); + } return; } usleep(0.25 * 1000000); diff --git a/app/Models/Traits/PublicationSettings.php b/app/Models/Traits/PublicationSettings.php index ed795592f..fee462446 100644 --- a/app/Models/Traits/PublicationSettings.php +++ b/app/Models/Traits/PublicationSettings.php @@ -1333,6 +1333,7 @@ trait PublicationSettings { $this->_addSettingField('section_accessibility', FormBigSection::class, $this->__('Accessibilité')); $this->_addSettingField('accessibility_menu', Checkbox::class, $this->__('Activer le menu d\'accessibilité'), ['default' => false]); + $this->_addSettingField('accessibility_ocr_assets',Checkbox::class, $this->__('Activer l\'OCR sur les liens image'), ['default'=>false]); $this->_addSettingField('accessible_contents', SelectFromArray::class, $this->__('Contenus alternatifs accessibles'), ['default' => 'disabled', 'options' => ['disabled' => __('Désactivés'), 'docling' => __('Contenus accessibles') . ' (docling)', 'excel' => __('Fichier excel ou liens "audiodescription"')]]); $this->_addSettingField('audiodescriptionTexts', FilesOrURL::class, $this->__('Contenus textuels'), [ 'accept' => self::$acceptXLSX, -- 2.39.5