]> _ Git - fluidbook-toolbox.git/commitdiff
wait #6789 @5:30
authorsoufiane <soufiane@cubedesigners.com>
Tue, 2 Apr 2024 15:32:05 +0000 (17:32 +0200)
committersoufiane <soufiane@cubedesigners.com>
Tue, 2 Apr 2024 15:32:05 +0000 (17:32 +0200)
resources/linkeditor/js/linkeditor.links.js
resources/linkeditor/js/linkeditor.resize.js

index 4485fd1d5e9ba62d0b131c73c5d45d4971eda1dc..a3667bb7e4583863135a1f2683529c37e945321c 100644 (file)
@@ -903,7 +903,6 @@ LinkeditorLinks.prototype = {
 
 
     addLink: function (link, triggerChange) {
-        console.log('new')
         if (triggerChange === undefined) {
             triggerChange = true;
         }
@@ -1148,7 +1147,6 @@ LinkeditorLinks.prototype = {
     },
 
     updateLinkData: function (id, data, updateHTML) {
-        console.log('is updating')
         if (LINKS[id] === undefined) {
             console.warn('Link ' + id + ' not found');
             return;
@@ -1584,10 +1582,19 @@ LinkeditorLinks.prototype = {
     },
 
     updatePreview: function(link) {
+        console.log(link)
         if($("#preview-links").hasClass("active")) {
             let linkData = link
 
             let l = this.getLinkById(link.uid)
+            let absoluteCss = {
+                width: "100%",
+                height: "100%",
+                top: 0,
+                left: 0,
+                position: "absolute",
+            }
+
             if ($('[data-id-preview="' + link.uid + '"]').length < 1) {
                 l.html("<div data-id-preview='" + link.uid + "'></div>")
             }
@@ -1630,6 +1637,41 @@ LinkeditorLinks.prototype = {
                 })
                 this.updateFontSize(link)
             }
+
+            if (linkData.type === '10') {
+                let paramIframe = 'accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share;'
+                let html = "<div id='video_"+linkData.uid+"' class='video-js'><div></div></div>"
+
+                let iframeUrl = () => {
+                    if(linkData.video_service === 'youtube') {
+                        return "https://www.youtube.com/embed/" + linkData.to + "?controls=" + linkData.video_controls + "&modestbranding=1&rel=0&showinfo=" + linkData.video_controls + "&loop=" + linkData.video_loop + "&muted="+linkData.video_sound_on+"&fs=0&hl&playsinline=true&enablejsapi=1";
+                    }else if(linkData.video_service === 'dailymotion') {
+                        return 'https://www.dailymotion.com/embed/video/' + linkData.to;
+                    }else if(linkData.video_service === 'dailymotion') {
+                        return 'https://player.vimeo.com/video/' + linkData.to + '?autoplay=' + linkData.video_auto_start + '&loop=' + linkData.video_loop + '&muted=' + linkData.video_sound_on;
+                    }
+                }
+
+                let iframe = "<iframe src='"+iframeUrl()+"' allowfullscreen></iframe>"
+                if(linkData.video_auto_start === '1' && linkData.video_service === 'youtube') {
+                    paramIframe += ' autoplay;'
+                }
+
+                $("[data-id-preview=" + linkData.uid + "]").css("position","relative").append(html)
+                $("#video_" + linkData.uid+ " div").css("background", linkData.extra).html(iframe)
+                $("#video_" + linkData.uid+ " iframe").css(absoluteCss).attr("allow", paramIframe)
+            }
+
+            if (linkData.type === '4') {
+                let url = "/fluidbook-publication/" + FLUIDBOOK_DATA.id + "/edit/links/assets/" + linkData.to
+                let html = "<video playsinline='playsinline' controlslist='nodownload' disablepictureinpicture oncontextmenu='return false;' src='"+url+"'><source src='"+url+"'></video>"
+                $("[data-id-preview=" + linkData.uid + "]").css("position","relative").html(html)
+                $("[data-id-preview=" + linkData.uid + "]").find("video").css({...absoluteCss, ...{'object-fit': 'fill'} })
+            }
+
+            if(linkData.type === '10' || linkData.type === '4') {
+                $("[data-id-preview=" + linkData.uid + "]").css("transform","rotate("+linkData.rot+"deg)")
+            }
         }
     },
 
@@ -1645,7 +1687,7 @@ LinkeditorLinks.prototype = {
         var pw = FLUIDBOOK_DATA.settings.width;
         var ph = FLUIDBOOK_DATA.settings.height;
 
-        var fs = link.height * (1 * Math.min((567 / pw), (709 / ph)));
+        var fs = link.height * (1 * Math.min(( 567 / pw), (709 / ph)));
 
         try {
             $("[data-id-preview=" + link.uid + "]").text(link.to).css({
@@ -1659,9 +1701,10 @@ LinkeditorLinks.prototype = {
 
     updateFontSize: function(link) {
         let zoom = this.linkeditor.zoom.zoom
+
         $("[data-id-preview="+link.uid+"]").css({
             transform: "scale("+zoom+")",
-            'transform-origin': 'left top'
+            'transform-origin': "0 0 0"
         })
     },
 
index 78912165a5b14c8bfee40209be307e773782b5b0..e036da80c1e8f1239e185555e1f86ccbd94728ab 100644 (file)
@@ -29,7 +29,6 @@ LinkeditorResize.prototype = {
         } else {
             $("#linkeditor").addClass('double').removeClass('single');
         }
-
         this.resizePages();
         this.updateWindowDimensions();
         this.resizeMain();