addLink: function (link, triggerChange) {
- console.log('new')
if (triggerChange === undefined) {
triggerChange = true;
}
},
updateLinkData: function (id, data, updateHTML) {
- console.log('is updating')
if (LINKS[id] === undefined) {
console.warn('Link ' + id + ' not found');
return;
},
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>")
}
})
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)")
+ }
}
},
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({
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"
})
},