From b18ee3dcd6a74d0663e23dba265a48ef1ce3f114 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 13 Feb 2025 19:11:20 +0100 Subject: [PATCH] #7241 --- app/Fluidbook/Compiler/Links.php | 13 +++++++++++++ app/Models/FluidbookTheme.php | 5 +++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/app/Fluidbook/Compiler/Links.php b/app/Fluidbook/Compiler/Links.php index 78ca514a6..c142531c3 100644 --- a/app/Fluidbook/Compiler/Links.php +++ b/app/Fluidbook/Compiler/Links.php @@ -5,9 +5,11 @@ namespace App\Fluidbook\Compiler; use App\Fluidbook\Link\Link; use App\Fluidbook\Link\LinksData; use App\SubForms\Link\Base; +use Cubist\Util\Graphics\Color; use Cubist\Util\Text; use Fluidbook\Tools\Links\AnchorLink; use Fluidbook\Tools\Links\ContentLink; +use Fluidbook\Tools\Links\NormalLink; use Illuminate\Support\Facades\Log; trait Links @@ -23,6 +25,12 @@ trait Links protected function writeLinks() { + $dupLinkAreaColor = ($this->getSetting('linksAnimationLayer', 'top') === 'under'); + if ($dupLinkAreaColor) { + $dupLinkAreaColor = $this->getSetting('linksColor'); + $dupLinkAreaOpacity = $this->getSetting('linksOpacity', 30) / 100; + $dupLinkAreaDuration = $this->getSetting('linkBlinkTime'); + } switch ($this->fluidbookSettings->customLinkClass) { case 'WescoSalesLink': $this->specialJsFiles[] = 'js/libs/interact.min.js'; @@ -109,6 +117,7 @@ trait Links foreach ($linksCopy as $k => $linkData) { + if ($linkData['type'] == Link::EVENT_OVERLAY) { if ($linkData['page'] % 2 == 1 || $linkData['left'] > $this->getWidthForLinks()) { $dupData = $linkData; @@ -321,6 +330,10 @@ trait Links $linksToAdd[] = $link->getRightClone(); } + if ($dupLinkAreaColor !== false && $link instanceof NormalLink && $link->display_area) { + $linksToAdd[] = $link->getDisplayAreaLink($dupLinkAreaColor, $dupLinkAreaOpacity, $dupLinkAreaDuration); + } + if (isset($canContainLinksTypes[$linkData['type']])) { $this->addLinkLinks($linkData, $links, $assetsDimensions, $linksToAdd); } diff --git a/app/Models/FluidbookTheme.php b/app/Models/FluidbookTheme.php index 765d46fbe..ce9ef869a 100644 --- a/app/Models/FluidbookTheme.php +++ b/app/Models/FluidbookTheme.php @@ -333,11 +333,12 @@ class FluidbookTheme extends ToolboxModel 'name' => 'linksAnimation', 'label' => __('Animation à l\'apparition'), 'type' => SelectFromArray::class, - 'options' => ['fade' => __('Opacité'), 'hightlight' => __('Surligner')], + 'options' => ['fade' => __('Opacité'), 'highlight' => __('Surligner')], 'default' => 'fade', ]); $this->addField([ - 'name' => __('Position de l\'animation'), + 'name' => 'linksAnimationLayer', + 'label' => __('Position de l\'animation'), 'type' => SelectFromArray::class, 'options' => ['top' => __('Par dessus les contenus'), 'under' => __('Sous la couche de texte')], 'default' => 'top', -- 2.39.5