]> _ Git - fluidbook-toolbox.git/commitdiff
wip #6167 @1
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Wed, 23 Aug 2023 15:31:20 +0000 (17:31 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Wed, 23 Aug 2023 15:31:20 +0000 (17:31 +0200)
app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php
resources/linkeditor/js/linkeditor.utils.js
resources/views/fluidbook_publication/link_editor.blade.php

index c497075af335ff9c3dd2eecc13e3a6bca194d6ac..8bae9ef5b1cce5d7a6f20e0427a10bf72b7e65b1 100644 (file)
@@ -27,7 +27,7 @@ trait LinksOperation
         Route::match(['post'], $segment . '/{id}/edit/links/move', $controller . '@moveLinks');
         Route::match(['get'], $segment . '/{id}/edit/links/versions/restore/{version}', $controller . '@restoreLinks');
         Route::match(['get'], $segment . '/{id}/edit/links/fixdriftedlinks', $controller . '@fixDriftedLinks');
-        Route::match(['get'], $segment . '/{id}/edit/links/assets/{file}', $controller . '@getLinkAsset');
+        Route::match(['get'], $segment . '/{id}/edit/links/assets/{file}', $controller . '@getLinkAsset')->name('fluidbookpublication-link-asset');
 
         Route::put($segment . '/{id}/save/links', $controller . '@saveLinks');
         Route::get($segment . '/{id}/edit/{type}_{page}.{format}', $controller . '@getLinkPage')
index 7995da4332959f33ead752a691634f251af27bda..2116afcdbe522f4642d3d5c73d2cb5be0e03a08a 100644 (file)
@@ -16,7 +16,7 @@ LinkeditorUtils.prototype = {
         if (page === undefined) {
             page = this.linkeditor.currentPage;
         }
-        return page.toString().indexOf('link_') === 0 || page === 'aftersearch' || page === 'background';
+        return page.toString().indexOf('link_') === 0 || (THEME[page] !== undefined && THEME[page] !== null);
     },
 
     getSpecialPageAssetURL(page) {
@@ -137,14 +137,9 @@ LinkeditorUtils.prototype = {
 
     roundDimension: function (v) {
         return (Math.round(v * 100000) / 100000);
-    },
-    intersectRect: function (r1, r2) {
-        return !(r2.left > r1.right ||
-            r2.right < r1.left ||
-            r2.top > r1.bottom ||
-            r2.bottom < r1.top);
-    },
-    isfocusOnFormItem: function () {
+    }, intersectRect: function (r1, r2) {
+        return !(r2.left > r1.right || r2.right < r1.left || r2.top > r1.bottom || r2.bottom < r1.top);
+    }, isfocusOnFormItem: function () {
         return $(document.activeElement).is('input[type="text"],input[type="email"],input[type="number"],input[type="tel"],input[type="search"],textarea,select');
     },
 
index b14fc69f60101841f28de202fca18f7356980686..9b617e089a4421abfd9368317721ccad8e1a8184 100644 (file)
     $themeData=$theme->getPageData();
     $t=$themeData->getRawData();
 
-    $extraFiles=['background'=>'backgroundImage','aftersearch'=>'afterSearch'];
+    $extraThemeFiles=['background'=>'backgroundImage','aftersearch'=>'afterSearch'];
+    $extraFluidbookFiles=['tabs'=>'tabsHTML5'];
     $hasExtra=false;
-    foreach ($extraFiles as $name=>$field) {
+    foreach ($extraThemeFiles as $name=>$field) {
         $file=$themeData->getImageFile($t[$field]);
         if(null===$file){
             $t[$name]=null;
             continue;
         }
-        $t[$name]=['path'=>$file,'url'=>$themeData->getImageURL($t[$field]),'dim'=>Cubist\Util\Graphics\Image::getimagesize($file)];
+        $t[$name]=['path'=>$file,'url'=>$themeData->getImageURL($t[$field]),'dim'=> \Cubist\Util\Graphics\Image::getimagesize($file)];
+        $hasExtra=true;
+    }
+    foreach ($extraFluidbookFiles  as $name=>$field) {
+        $fname=$fluidbook->$field;
+        if(!$fname){
+            continue;
+        }
+        $file=$fluidbook->getAssetDir().'/'.$fname;
+        if(null===$file || !file_exists($file)){
+            $t[$name]=null;
+            continue;
+        }
+
+        if(stristr($file,'.svg')){
+            $opt=\Fluidbook\Tools\SVG\SVGTools::optimizeSVG($file);
+        }
+
+        $t[$name]=[
+            'path'=>$file,
+            'url'=>route('fluidbookpublication-link-asset',['id'=>$fluidbook->id,'file'=>str_replace('.svg','.o.svg',$fname)]),
+            'dim'=> \Cubist\Util\Graphics\Image::getimagesize($file)
+            ];
         $hasExtra=true;
     }
 
                                data-special="aftersearch"
                                data-tooltip="{{__('Editer les liens de l\'image supplĂ©mentaire du menu')}}"></a>
                         @endif
+                        @if($fluidbook->tabsHTML5 && stristr($fluidbook->tabsHTML5,'.svg'))
+                            <a href="#tabs" data-action="changePage"
+                               data-action-args="{{json_encode(['tabs'])}}"
+                               data-icon="tabs"
+                               data-special="tabs"
+                               data-tooltip="{{__('Editer les liens des onglets')}}"></a>
+                        @endif
                     @endif
                     <div class="separator"></div>
                     @if($fluidbook->pdfThumbnails)