]> _ Git - fluidbook-html5.git/commitdiff
wip #5703 @2
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 2 May 2023 17:57:53 +0000 (19:57 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 2 May 2023 17:57:53 +0000 (19:57 +0200)
js/libs/fluidbook/fluidbook.menu.js
js/libs/fluidbook/links/fluidbook.links.zoom.js

index 358a044ad9f95afe1b8baa5ee16e552c51dc856b..a422f105536e7fdcfce01605b700fd6db6393a95 100644 (file)
@@ -341,9 +341,12 @@ FluidbookMenu.prototype = {
     },
 
     openSlideshow: function (slideshow, callback) {
-        var hash = '#/slideshow/' + slideshow;
+        var markup, hash;
+
+        hash = '#/slideshow/' + slideshow;
         var a = $('a[href="' + hash + '"]');
-        var markup = decodeURIComponent($(a).attr('data-slideshow'));
+        markup = decodeURIComponent($(a).attr('data-slideshow'));
+
         var view = this.getCaption();
         view += '<div class="content">';
         view += markup;
@@ -353,7 +356,7 @@ FluidbookMenu.prototype = {
         // TODO: check which type should be passed to fluidbook.stats.track() ???
         // this.fluidbook.stats.track(11);
 
-        this.fluidbook.slideshow.initPopupSlideshow($('#slideshow_' + slideshow));
+        this.fluidbook.slideshow.initPopupSlideshow($(".fb-slideshow").eq(0));
 
         // var $this = this;
         // var times = [250, 500, 750, 1000, 1250];
index ed6232076c40b4cb3fbe46bdd107caedd57a4e30..e139a2840ae46aae2ff7a0da07c508d758ac6d63 100644 (file)
@@ -174,6 +174,7 @@ FluidbookLinksZoom.prototype = {
 
                     var j = i + 1;
                     var action = $this.fluidbook.settings['product_zoom_action_' + j];
+                    var markup;
 
                     if (!action) {
                         action = 'link';
@@ -212,24 +213,29 @@ FluidbookLinksZoom.prototype = {
                         } else if (action === 'addtocart') {
                             menu += ' href="#" data-cart-ref="' + $(zoomLink).data('ref') + '" ';
                         } else if (action === 'image') {
-                            menu += ' href="#/multimedia/' + hash + '" ';
-                            if (data.substr(0, 1) !== '<') {
-                                data = '<img src="' + data + '" className="multimedia"/>';
+                            if (data.indexOf('splide__track') >= 0) {
+                                var id = $(data).find('.fb-slideshow').attr('id');
+                                menu += ' href="#/slideshow/' + id + '" data-slideshow="' + encodeURIComponent(data) + '" '
+                            } else {
+                                menu += ' href="#/multimedia/' + hash + '" ';
+                                if (data.substr(0, 1) !== '<') {
+                                    data = '<img src="' + data + '" className="multimedia"/>';
+                                }
+                                markup = '<div class="multimediaContainer ">' + data + '</div>';
+                                menu += ' data-multimedia="' + encodeURIComponent(markup) + '"'
                             }
-                            var markup = '<div class="multimediaContainer ">' + data + '</div>';
-                            menu += ' data-multimedia="' + encodeURIComponent(markup) + '"'
                         } else if (action === 'videofile') {
                             menu += ' href="#/video/' + hash + '" ';
-                            var markup = ' <div class="videoContainer" data-loop="0" data-controls="1" data-sound="1" data-autoplay="1" width="1920" height="1080" data-name="' + data + '" data-id="vi_' + hash + '" id="vi_' + hash + '" data-link-id="v_' + hash + '"></div>';
+                            markup = ' <div class="videoContainer" data-loop="0" data-controls="1" data-sound="1" data-autoplay="1" width="1920" height="1080" data-name="' + data + '" data-id="vi_' + hash + '" id="vi_' + hash + '" data-link-id="v_' + hash + '"></div>';
                             menu += ' data-video="' + encodeURIComponent(markup) + '"'
                         } else if (action === 'videogif') {
                             if (data.indexOf('.gif') >= 0) {
                                 menu += ' href="#/multimedia/' + hash + '" ';
-                                var markup = '<div class="multimediaContainer "><img src="' + data + '" class="multimedia" /></div>';
+                                markup = '<div class="multimediaContainer "><img src="' + data + '" class="multimedia" /></div>';
                                 menu += ' data-multimedia="' + encodeURIComponent(markup) + '"';
                             } else {
                                 menu += ' href="#/video/' + hash + '" ';
-                                var markup = ' <div class="videoContainer" data-loop="1" data-controls="0" data-sound="0" data-nativeautoplay="1" width="1920" data-name="' + data + '" data-id="vi_' + hash + '" id="vi_' + hash + '" data-link-id="v_' + hash + '"></div>';
+                                markup = ' <div class="videoContainer" data-loop="1" data-controls="0" data-sound="0" data-nativeautoplay="1" width="1920" data-name="' + data + '" data-id="vi_' + hash + '" id="vi_' + hash + '" data-link-id="v_' + hash + '"></div>';
                                 menu += ' data-video="' + encodeURIComponent(markup) + '"';
                             }