]> _ Git - fluidbook-toolbox.git/commitdiff
wip #5466 @1.5
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 16 Sep 2022 17:00:28 +0000 (19:00 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 16 Sep 2022 17:00:28 +0000 (19:00 +0200)
app/Util/FluidbookLinks.php
public/packages/fluidbook/toolbox/css/linkeditor.css
public/packages/fluidbook/toolbox/css/linkeditor.css.map
public/packages/fluidbook/toolbox/css/linkeditor.less
public/packages/fluidbook/toolbox/js/linkeditor.js
resources/views/fluidbook_publication/link_editor.blade.php

index 627c453d0e62ac047635a817c10ae03ed2373a32..eb2331be127335d0c3a1692cc9422cf2e6599059 100644 (file)
@@ -156,19 +156,19 @@ class FluidbookLinks
         }
 
         $r = json_decode(gzdecode(file_get_contents($file)), true);
-        $links = $r['links'];
-        $rulers = self::_rulersUID($r['rulers']);
+        $links = self::_UID($r['links']);
+        $rulers = self::_UID($r['rulers']);
         self::_correctImageSpecialLinks($links);
     }
 
-    protected static function _rulersUID($rulers)
+    protected static function _UID($items)
     {
         $res = [];
-        foreach ($rulers as $ruler) {
-            if (!isset($ruler['uid'])) {
-                $ruler['uid'] = self::uid();
+        foreach ($items as $item) {
+            if (!isset($item['uid'])) {
+                $item['uid'] = self::uid();
             }
-            $res[$ruler['uid']] = $ruler;
+            $res[$item['uid']] = $item;
         }
         return $res;
     }
@@ -425,12 +425,14 @@ class FluidbookLinks
     {
         $finalLinks = [];
         $l = array_merge(self::_getAsArray($links), self::_getAsArray($specialLinks));
-        foreach ($l as $k => $item) {
+        $k = 0;
+        foreach ($l as $item) {
             $item['id'] = $k + 1;
             if (!isset($item['to'])) {
                 $item['to'] = '';
             }
             $finalLinks[] = $item;
+            $k++;
         }
 
         self::_correctImageSpecialLinks($finalLinks);
index 82f02099d641ab68dfc40094fc198f831d599ac0..5c42efd970f00424f500f9eb904493186724fb2b 100644 (file)
@@ -172,6 +172,14 @@ html {
   height: calc( 100% - 40px);
   width: 100%;
 }
+#linkeditor #linkeditor-main #linkeditor-editor #linkeditor-links {
+  position: relative;
+  z-index: 2000;
+}
+#linkeditor #linkeditor-main #linkeditor-editor #linkeditor-links .link {
+  position: absolute;
+  border: 1px solid #ff0000;
+}
 #linkeditor #linkeditor-main #linkeditor-editor .ruler {
   position: absolute;
   top: 0;
@@ -436,6 +444,11 @@ html {
   left: 0px;
   background-color: rgba(255, 255, 255, 0.2);
 }
+@media (prefers-color-scheme: dark) {
+  #linkeditor #linkeditor-main #linkeditor-editor #linkeditor-canvas #linkeditor-fluidbook .linkeditor-page {
+    background-color: rgba(0, 0, 0, 0.2);
+  }
+}
 #linkeditor #linkeditor-main #linkeditor-editor #linkeditor-canvas #linkeditor-fluidbook .linkeditor-page .contents {
   background-color: #fff;
   position: absolute;
index 2e4b671b50d01d4688b3242e25496c8c88a9bdcd..ba41558d8060f438ea96edf9f68199d9c6b7bb6e 100644 (file)
@@ -1 +1 @@
-{"version":3,"sources":["linkeditor.less"],"names":[],"mappings":"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","file":"linkeditor.css"}
\ No newline at end of file
+{"version":3,"sources":["linkeditor.less"],"names":[],"mappings":"AAAA;EACI,SAAA;EACA,UAAA;EACA,sBAAA;;AAKJ;EACI,yBAAA;;AACA,QAAoC;EAApC;IACI,sBAAA;;;AAIR;AAAK;AAAW;EACZ,iBAAA;EACA,eAAA;;AAGJ;AAAM;AAAa;EACf,YAAA;EACA,WAAA;EACA,gBAAA;;AAGJ;EAGI,mBAAA;EACA,YAAA;;AAJJ,WAMI;AANJ,WAMW;EACH,qBAAA;EACA,YAAA;EACA,mBAAA;EACA,gBAAA;;AAVR,WAaI;EACI,WAAA;EACA,yBAAA;;AACA,QAAoC;EAApC,WAHJ;IAIQ,sBAAA;;;AAjBZ,WAqBI;EAGI,+BAAA;;AAxBR,WAqBI,iBAKI;EAII,yBAAA;EAKA,cAAA;EAIA,YAAA;EACA,YAAA;;AARA,QAAoC;EAApC,WAXR,iBAKI;IAOQ,sBAAA;;;AAGJ,QAAoC;EAApC,WAfR,iBAKI;IAWQ,WAAA;;;AArChB,WAqBI,iBAKI,oBAgBI;EACI,YAAA;EACA,qBAAA;EACA,YAAA;EACA,mBAAA;EACA,UAAA;;AAEA,WA5BZ,iBAKI,oBAgBI,IAOK;EACG,kBAAA;;AAlDpB,WAqBI,iBAKI,oBAgCI;EACI,qBAAA;EACA,eAAA;;AA5DhB,WAqBI,iBAKI,oBAqCI;EACI,QAAA;EACA,YAAA;EACA,aAAA;EACA,8BAAA;;AAnEhB,WAqBI,iBAKI,oBA4CI;EACI,iBAAA;EACA,sBAAA;EAKA,sBAAA;EACA,kBAAA;EACA,YAAA;EACA,eAAA;EACA,kBAAA;EACA,SAAA;EACA,iBAAA;EACA,aAAA;EACA,gBAAA;;AAZA,QAAoC;EAApC,WApDZ,iBAKI,oBA4CI;IAIQ,sBAAA;IACA,kBAAA;;;AA3EpB,WAqBI,iBAKI,oBA4CI,uBAiBI;EACI,mBAAA;EACA,iBAAA;EACA,SAAA;EACA,6BAAA;EACA,WAAA;EACA,cAAA;EAIA,eAAA;EACA,qBAAA;EAOA,gBAAA;EACA,kBAAA;;AAZA,QAAoC;EAApC,WAzEhB,iBAKI,oBA4CI,uBAiBI;IAQQ,WAAA;;;AAKJ,WA/EhB,iBAKI,oBA4CI,uBAiBI,MAaK;AAA6B,WA/E9C,iBAKI,oBA4CI,uBAiBI,MAamC;EAC3B,wBAAA;EACA,SAAA;;AAOJ,WAxFhB,iBAKI,oBA4CI,uBAiBI,MAsBK;AAAQ,WAxFzB,iBAKI,oBA4CI,uBAiBI,MAsBc;EACN,UAAA;EACA,SAAA;;AA/GxB,WAqBI,iBAKI,oBA0FI;EACI,qBAAA;EACA,mBAAA;EACA,YAAA;EACA,eAAA;EACA,YAAA;EACA,kBAAA;EACA,aAAA;EACA,kBAAA;EACA,cAAA;;AACA,QAAoC;EAApC,WAzGZ,iBAKI,oBA0FI;IAWQ,WAAA;;;AAGJ,WA7GZ,iBAKI,oBA0FI,YAcK;AAAQ,WA7GrB,iBAKI,oBA0FI,YAcc;EACN,sBAAA;;AACA,QAAoC;EAApC,WA/GhB,iBAKI,oBA0FI,YAcK;EAEG,WA/GhB,iBAKI,oBA0FI,YAcc;IAGF,sBAAA;;;AAIR,WApHZ,iBAKI,oBA0FI,YAqBK;EACG,YAAA;;AADJ,WApHZ,iBAKI,oBA0FI,YAqBK,MAGG;EACI,YAAA;;AA7IxB,WAqBI,iBAKI,oBA0FI,YA6BI;EACI,kBAAA;EACA,QAAA;EACA,YAAA;EACA,WAAA;;AArJpB,WAqBI,iBAqII;EACI,kBAAA;EACA,0BAAA;EACA,WAAA;;AA7JZ,WAqBI,iBAqII,mBAOI;EAKI,kBAAA;EACA,aAAA;;AAvKhB,WAqBI,iBAqII,mBAOI,kBACI;EACI,kBAAA;EACA,yBAAA;;AApKpB,WAqBI,iBAqII,mBAgBI;EACI,kBAAA;EACA,MAAA;EACA,OAAA;EACA,aAAA;EACA,eAAA;EACA,kBAAA;EACA,mBAAA;;AAEA,WA9JZ,iBAqII,mBAgBI,OASK;EACG,kBAAA;EACA,SAAS,EAAT;EACA,cAAA;EACA,YAAA;EACA,WAAA;;AAGJ,WAtKZ,iBAqII,mBAgBI,OAiBK;EACG,kBAAA;;AAGJ,WA1KZ,iBAqII,mBAgBI,OAqBK;EACG,kBAAA;;AAGJ,WA9KZ,iBAqII,mBAgBI,OAyBK;EACG,UAAA;EACA,0BAAA;EACA,sBAAA;EACA,kBAAA;EACA,SAAA;;AAEA,WArLhB,iBAqII,mBAgBI,OAyBK,eAOI;EACG,UAAA;EACA,UAAA;;AAIR,WA3LZ,iBAqII,mBAgBI,OAsCK;EACG,wBAAA;EACA,WAAA;EACA,yBAAA;EACA,UAAA;;AAEA,WAjMhB,iBAqII,mBAgBI,OAsCK,eAMI;EACG,SAAA;EACA,WAAA;EACA,kBAAA;;AAzNxB,WAqBI,iBAqII,mBAqEI;EAQI,WAAA;EACA,kBAAA;EACA,QAAA;EACA,SAAA;EACA,WAAA;EACA,YAAA;;AATA,QAAoC;EAApC,WA9MZ,iBAqII,mBAqEI;IAKQ,WAAA;;;AApOpB,WAqBI,iBAqII,mBAqEI,mBAeI;EACI,kBAAA;EACA,QAAA;EACA,SAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,sBAAA;;AACA,QAAoC;EAApC,WAjOhB,iBAqII,mBAqEI,mBAeI;IASQ,sBAAA;;;AAvPxB,WAqBI,iBAqII,mBAqEI,mBA6BI;EACI,gBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAhQpB,WAqBI,iBAqII,mBAqEI,mBA6BI,WAMI;EACI,kBAAA;EACA,MAAA;EACA,OAAA;EACA,UAAA;EACA,eAAA;EACA,gBAAA;EACA,aAAA;;AAzQxB,WAqBI,iBAqII,mBAqEI,mBA6BI,WAMI,MASI;EACI,cAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,sBAAA;EACA,WAAA;EAKA,YAAA;;AAJA,QAAoC;EAApC,WA7PxB,iBAqII,mBAqEI,mBA6BI,WAMI,MASI;IAQQ,sBAAA;IACA,WAAA;;;AApRhC,WAqBI,iBAqII,mBAqEI,mBA6BI,WA8BI;EACI,oBAAA;EACA,kBAAA;EACA,gBAAA;;AACA,QAAoC;EAApC,WAzQpB,iBAqII,mBAqEI,mBA6BI,WA8BI;IAKQ,sBAAA;;;AA/R5B,WAqBI,iBAqII,mBAqEI,mBA6BI,WA8BI,UAQI;EACI,kBAAA;EACA,eAAA;;AApS5B,WAqBI,iBAqII,mBAqEI,mBA6BI,WA8BI,UAaI;EACI,kBAAA;;AAxS5B,WAqBI,iBAqII,mBAqEI,mBA8EI;EACI,YAAA;EACA,WAAA;;AA/SpB,WAqBI,iBAqII,mBAqEI,mBA8EI,oBAII;EACI,YAAA;EACA,4BAAA;;AACA,QAAoC;EAApC,WA/RpB,iBAqII,mBAqEI,mBA8EI,oBAII;IAIQ,kBAAA;;;AArT5B,WAqBI,iBAqII,mBAqEI,mBA8EI,oBAYI;AAzTpB,WAqBI,iBAqII,mBAqEI,mBA8EI,oBAYe;EACP,UAAA;EACA,2BAAA;;AACA,QAAoC;EAApC,WAvSpB,iBAqII,mBAqEI,mBA8EI,oBAYI;EAGI,WAvSpB,iBAqII,mBAqEI,mBA8EI,oBAYe;IAIH,kBAAA;;;AA7T5B,WAqBI,iBAqII,mBAqEI,mBA8EI,oBAoBI;EACI,YAAA;;AAlUxB,WAqBI,iBAqII,mBAqEI,mBA8EI,oBAoBI,UAGI;EACI,WAAA;EACA,SAAA;;AAtU5B,WAqBI,iBAqII,mBAqEI,mBA8EI,oBA6BI;EACI,SAAA;EACA,WAAA;;AAEA,WAzTpB,iBAqII,mBAqEI,mBA8EI,oBA6BI,aAIK;EACG,WAAA;;AA/U5B,WAqBI,iBAqII,mBAqEI,mBAqHI;EACI,WAAA;EACA,YAAA;;AAtVpB,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAII;EACI,WAAA;EACA,8BAAA;;AACA,QAAoC;EAApC,WAtUpB,iBAqII,mBAqEI,mBAqHI,oBAII;IAIQ,kBAAA;;;AA5V5B,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAII,MAOI;EACI,qBAAA;EACA,WAAW,cAAX;;AAjW5B,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAiBI;AArWpB,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAiBe;EACP,WAAA;EACA,6BAAA;;AACA,QAAoC;EAApC,WAnVpB,iBAqII,mBAqEI,mBAqHI,oBAiBI;EAGI,WAnVpB,iBAqII,mBAqEI,mBAqHI,oBAiBe;IAIH,kBAAA;;;AAzW5B,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAyBI;EACI,WAAA;;AA9WxB,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAyBI,UAGI;EACI,kBAAA;EACA,eAAA;EACA,qBAAA;EACA,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,QAAA;EACA,SAAA;;AAxX5B,WAqBI,iBAqII,mBAqEI,mBAqHI,oBAyBI,UAcI;EACI,QAAA;EACA,UAAA;;AAEA,WA1WxB,iBAqII,mBAqEI,mBAqHI,oBAyBI,UAcI,aAIK;EACG,UAAA;;AAhYhC,WAqBI,iBAqII,mBA6OI;EACI,WAAA;EACA,YAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,eAAA;EACA,qBAAA;EACA,gBAAA;;AA/YhB,WAqBI,iBAqII,mBAwPI;EACI,yBAAA;EAKA,kBAAA;EACA,UAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,8BAAA;EACA,yBAAA;EACA,6BAAA;EACA,cAAA;;AAZA,QAAoC;EAApC,WA/XZ,iBAqII,mBAwPI;IAGQ,sBAAA;;;AAaJ,WA7YZ,iBAqII,mBAwPI,mBAgBK;EACG,UAAA;EACA,WAAA;;AAGJ,WAlZZ,iBAqII,mBAwPI,mBAqBK;EACG,uBAAA;;AAEA,WArZhB,iBAqII,mBAwPI,mBAqBK,yBAGI;EACG,sBAAA;;AAIR,WA1ZZ,iBAqII,mBAwPI,mBA6BK;EACG,sBAAA;EACA,sBAAA;EACA,mBAAA;;AAGJ,WAhaZ,iBAqII,mBAwPI,mBAmCK;EACG,YAAA;;AAGJ,WApaZ,iBAqII,mBAwPI,mBAuCK;EACG,gBAAA;;AA1bpB,WAqBI,iBAqII,mBAwPI,mBA4CI;EACI,qBAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;;AAlcpB,WAqBI,iBAqII,mBAwPI,mBA4CI,sBAMI;EACI,kBAAA;EACA,QAAA;EACA,SAAA;EACA,0CAAA;;AACA,QAAoC;EAApC,WApbpB,iBAqII,mBAwPI,mBA4CI,sBAMI;IAMQ,oCAAA;;;AA1c5B,WAqBI,iBAqII,mBAwPI,mBA4CI,sBAMI,iBAUI;EACI,sBAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;;AApd5B,WAqBI,iBAqII,mBAwPI,mBA4CI,sBAMI,iBAUI,UAQI;EACI,cAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;;AAEA,WA1c5B,iBAqII,mBAwPI,mBA4CI,sBAMI,iBAUI,UAQI,IASK;EACG,UAAA;;AAOR,OAAQ,YAldhC,iBAqII,mBAwPI,mBA4CI,sBAMI,iBAkCK;EAEO,aAAA;;AAYhC;EACI,aAAA","file":"linkeditor.css"}
\ No newline at end of file
index ab75a7c124593ebbf9f95738ab21859ddcbb4c89..8b2d21f58d707c4e376983603d057bd4c6b9cb08 100644 (file)
@@ -99,7 +99,7 @@ body, #linkeditor, html {
                 background-color: #fff;
                 @media (prefers-color-scheme: dark) {
                     background-color: #000;
-                    border-color:#333;
+                    border-color: #333;
                 }
                 border: 1px solid #ccc;
                 border-radius: 5px;
@@ -185,6 +185,15 @@ body, #linkeditor, html {
 
             @ruler-margin: 2px;
 
+            #linkeditor-links {
+                .link {
+                    position: absolute;
+                    border: 1px solid #ff0000;
+                }
+                position: relative;
+                z-index: 2000;
+            }
+
             .ruler {
                 position: absolute;
                 top: 0;
@@ -460,6 +469,7 @@ body, #linkeditor, html {
                     cursor: grabbing;
                 }
 
+
                 #linkeditor-fluidbook {
                     transform-origin: 0 0;
                     position: absolute;
@@ -471,6 +481,10 @@ body, #linkeditor, html {
                         top: 0px;
                         left: 0px;
                         background-color: rgba(255, 255, 255, 0.2);
+                        @media (prefers-color-scheme: dark) {
+                            background-color: rgba(0, 0, 0, 0.2);
+                        }
+
 
                         .contents {
                             background-color: #fff;
@@ -510,6 +524,6 @@ body, #linkeditor, html {
 
 }
 
-#linkeditor-preload{
+#linkeditor-preload {
     display: none;
 }
index ee1ae1b81df3a20be3f091ac8edcede9ae32de3e..cc437643c9a77032e36fb5bdd5d343b4814b1847 100644 (file)
@@ -16,6 +16,7 @@ var vectorPages = splitPages(FLUIDBOOK_DATA.settings.vectorPages);
 var unsavedChanges = false;
 var automaticSaveTimeout;
 var runningAutomaticSaveTimeout = false;
+var dimensionProperties = ['left', 'top', 'width', 'height'];
 
 $(function () {
     init();
@@ -332,16 +333,21 @@ function getRulersMagnetValues(axis) {
 }
 
 function updateFBElements() {
-    var dims = ['left', 'top', 'width', 'height'];
     $('[fb-ref]').each(function () {
         var e = $(this);
         var rect = $(this).attr('fb-ref');
-        $.each(dims, function (k, dim) {
+        var css = {};
+        $.each(dimensionProperties, function (k, dim) {
             if ($(e).is('[fb-' + dim + ']')) {
-                var v = fluidbookTo(parseFloat($(e).attr('fb-' + dim)), dim, rect);
-                $(e).css(dim, v);
+                var v = parseFloat($(e).attr('fb-' + dim));
+                if (dim === 'width' || dim === 'height') {
+                    css[dim] = v * (fs * zoom);
+                } else {
+                    css[dim] = fluidbookTo(v, dim, rect);
+                }
             }
         });
+        $(e).css(css);
     });
 }
 
@@ -546,6 +552,36 @@ function _loadPage(p, container) {
 }
 
 function loadLinks(page, side) {
+    $.each(LINKS, function (uid, link) {
+        if (link.page != page) {
+            return;
+        }
+        if (side === 'right') {
+            link.left = parseInt(link.left) + pw;
+        }
+        addLink(link, side);
+    });
+}
+
+function addLink(link) {
+    if (link.uid === undefined) {
+        link.uid = generateUID();
+        LINKS[link.uid] = link;
+        hasChanged();
+    }
+
+    var attrs = {};
+    $.each(link, function (k, v) {
+        if (dimensionProperties.indexOf(k) >= 0) {
+            attrs['fb-' + k] = v;
+        } else {
+            attrs['data-' + k] = v;
+        }
+    });
+
+    var e = $('<div class="link" fb-ref="editor"></div>');
+    $(e).attr(attrs);
+    $("#linkeditor-links").append(e);
 }
 
 function clearLinksAndRulers() {
index e80cc82dfd7215a920e062c9476671113407fd17..a1ffa86dc2a879b47ec2fe797703dd4d86360e6a 100644 (file)
@@ -59,6 +59,7 @@
                 </nav>
             </div>
             <div id="linkeditor-editor">
+                <div draggable="false" id="linkeditor-links"></div>
                 <div draggable="false" id="linkeditor-rulers">
                     <div id="linkeditor-ruler-corner"></div>
                     <div class="ruler-bar" id="linkeditor-ruler-x"></div>