//----------------------------------------------------------// // XPLAIN.JS Animation script for HelpXPlain presentations. // Version: 1.7 // Copyright EC Software GmbH 2018-2019 //----------------------------------------------------------// !function(e,t){var a,o,r,s=(a=e.createElement("dummy").style,o="Webkit Moz O ms Khtml".split(" "),r={},function(e){if(void 0===r[e]){var t=e.charAt(0).toUpperCase()+e.substr(1),n=(e+" "+o.join(t+" ")+t).split(" ");for(var l in r[e]=null,n)if(void 0!==a[n[l]]){r[e]=n[l];break}}return r[e]}),i=function(e,t){var a,o;for(a in t)t.hasOwnProperty(a)&&null!==(o=s(a))&&(e.style[o]=t[a]);return e},c=function(e,t){return e.dataset?e.dataset[t]:e.getAttribute("data-"+t)};initXplain=function(a,o,r,u){navigator.userAgent.toLowerCase();var d=null!==s("transform"),f=null!==s("perspective"),m=function(){return!1};if(!d){var g=e.getElementById("fallbackmessage");return g&&i(g,{display:"block"}),{goto:m,prev:m,next:m,navigate:m,play:m,stop:m,reload:m,playing:m,share:m,enableloop:m,enableaudio:m,audioenabled:m,playmedia:m,gofullscreen:m,exitfullscreen:m,addEventListener:m,removeEventListener:m,animateTo:m,animateFromTo:m,set:m,slideDuration:m}}var b=t.location.hash;b.indexOf("?")>-1&&(b=b.substr(1,b.indexOf("?")-1));var v=0;t.location.href.indexOf("?autoplay=")>-1&&(v=parseFloat(t.location.href.substring(t.location.href.indexOf("?autoplay=")+10)));var h=e.getElementById("xplbackgroundbase"),y=e.getElementById("xplbackground"),k=e.getElementById("xplbase"),w=e.getElementById("xplcanvas"),x=Array.prototype.slice.call(e.getElementsByClassName("xplframe"));x.sort(function(e,t){var a=parseInt(c(e,"frameindex")),o=parseInt(c(t,"frameindex"));return ao?1:0});for(var j=0;j0&&L),_(e.getElementById("xplplayernext"),he()>-1&&L)},K=function(t){_(e.getElementById("xplplayerplay"),t&&L),_(e.getElementById("xplplayerstop"),!t&&L),Y()},J=function(){_(e.getElementById("xplplayerloading"),!L)},Q=function(e){var a=t.innerWidth/e.w,o=(t.innerHeight-Z())/e.h,n=o>a?a:o;return"margin"==e.position&&(n*=.9),"fill"==e.position&&(n=ox.count?0:e-1},ee=function(e){var t=e.target;re(t,!t.paused,t.duration,t.currentTime)},te=function(e){var t=e.target;ne(t)},ae=function(e,t){e.pauseSounds&&le(!1);var a=e.play();return a&&a.catch(function(e){console&&console.log(e.message)}),e.paused||(e.ducking>0&&se(e,parseFloat(100-e.ducking)/100),e.volume=e.defaultVolume?U*parseFloat(e.defaultVolume):U,t&&(e.addEventListener("timeupdate",ee),e.addEventListener("ended",te))),!e.paused},oe=function(e){e.paused||(e.pause(),e.ducking>0&&se(e,1),re(e,!1,-1,-1))},ne=function(e){e.removeEventListener("timeupdate",ee),e.removeEventListener("ended",te),e.pause(),e.load(),e.ducking>0&&se(e,1),re(e,!1,0,0)},re=function(e,t,a,o){var n=e.parentElement.children[0],r=n.getElementsByTagName("path"),l=n.getElementsByTagName("ellipse"),s=n.getElementsByTagName("text"),c=r[0],u=r[1],p=l[2],d=s[0];if(e.buttons!=t&&(t?(i(c,{display:"none"}),i(u,{display:"block"})):(i(c,{display:"block"}),i(u,{display:"none"})),e.buttons=t),a>-1&&p)if(0==o)p.style.strokeDashoffset="0",d&&(d.textContent="");else if(p.style.strokeDashoffset=parseFloat(270.1-270.1*o/a)+"%",d){var f=parseInt(o/60),m=parseInt(o-f);d.textContent=f+":"+(m<10?"0"+m:m)}},le=function(e){for(var t=0;t0?a:1e-4),r=0;r0&&ae(A,!1);break;case"autoplay":case"autoplayonly":I&&ae(A,!1)}}():A.pause());var l=e.getElementById("xplplayeraudioinfo");l&&(t&&"block"==l.style.display?l.parentNode.removeChild(l):o&&(l.animation=new TimelineLite,l.animation.fromTo(l,.3,{scale:.1},{scale:1},0),l.animation.fromTo(l,4,{opacity:1,display:"block"},{opacity:0,display:"none"},10)))},ce=function(t){var a=e.getElementById("xplplayervolume");if(a){var o=a.getElementsByClassName("range")[0],n=a.getElementsByClassName("bar")[0],r=a.getElementsByClassName("slider")[0];o.offsetWidth>o.offsetHeight?(i(n,{top:"",height:"",width:parseInt(o.offsetWidth*(q?0:t))+"px"}),i(r,{top:"",left:parseInt(o.offsetLeft+n.offsetWidth-r.offsetWidth/2)+"px"})):(i(n,{width:"",top:parseInt(o.offsetHeight-o.offsetHeight*(q?0:t))+"px",height:parseInt(o.offsetHeight*(q?0:t))+"px"}),i(r,{top:parseInt(o.offsetTop+n.offsetTop-r.offsetHeight/2)+"px",left:""}))}},ue=function(e){function t(e){for(j=0;j0?o[i].delay:-o[i].delay))?s:l;for(i=0;i=0?o[i].delay:l+parseFloat(o[i].delay),d=null;switch(o[i].ease.toLowerCase()){case"power1.easeout":d=CustomEase.create("Power1.EaseOut","M0,0,C0.104,0.204,0.492,1,1,1");break;case"power2.easeout":d=CustomEase.create("Power2.EaseOut","M0,0,C0.126,0.382,0.282,0.674,0.44,0.822,0.632,1.002,0.818,1,1,1");break;case"back.easeout":d=CustomEase.create("Back.EaseOut","M0,0,C0.128,0.572,0.257,1.016,0.512,1.09,0.672,1.136,0.838,1,1,1");break;case"elastic.easeout":d=CustomEase.create("Elastic.EaseOut","M0,0,C0,0,0.049,0.675,0.085,1.115,0.122,1.498,0.156,1.34,0.16,1.322,0.189,1.193,0.203,1.111,0.23,0.978,0.262,0.818,0.303,0.876,0.307,0.882,0.335,0.925,0.349,0.965,0.38,1.006,0.43,1.088,0.484,1.022,0.53,0.997,0.58,0.964,0.667,1.002,0.725,1.004,0.829,1.008,1,1,1,1");break;case"bounce.easeout":d=CustomEase.create("Bounce.EaseOut","M0,0 C0.14,0 0.242,0.438 0.272,0.561 0.313,0.728 0.354,0.963 0.362,1 0.37,0.985 0.414,0.873 0.455,0.811 0.51,0.726 0.573,0.753 0.586,0.762 0.662,0.812 0.719,0.981 0.726,0.998 0.788,0.914 0.84,0.936 0.859,0.95 0.878,0.964 0.897,0.985 0.911,0.998 0.922,0.994 0.939,0.984 0.954,0.984 0.969,0.984 1,1 1,1")}switch(o[i].kind){case"wait":r.to(o[i].obj,o[i].duration,{},u);break;case"show":r.to(o[i].obj,0,{display:"block"},u);break;case"hide":r.to(o[i].obj,0,{display:"none"},u);break;case"fadein":(f=o[i].obj.style.opacity)||(f=1),r.to(o[i].obj,0,{opacity:0,display:"block"},u),r.to(o[i].obj,o[i].duration,{opacity:f},u);break;case"fadeout":var f;resultVisible=!1,(f=o[i].obj.style.opacity)||(f=1),r.fromTo(o[i].obj,o[i].duration,{opacity:f},{opacity:0},u),r.to(o[i].obj,0,{display:"none"},parseFloat(o[i].duration)+parseFloat(u));break;case"stroke":if(r.to(o[i].obj,0,{display:"block"},u),I=(h=o[i].obj.children).length>0?h[0]:null)if(L=I.childNodes)for(p=0;p0&&("P"==e.tagName||"LI"==e.tagName||"DIV"==e.tagName)&&(h.push(null),y+=10)});var k=o[i].duration/y,j=0;for(r.to(o[i].obj,0,{display:"block"},u),n=0;n0?h[0].contentDocument:null)if((L=I.querySelectorAll("path, line, polyline, polygon, rect, ellipse")).length>0){k=parseFloat(o[i].duration/L.length);for(p=0;pt.innerHeight?t.innerWidth:t.innerHeight,K=Y;switch(o[i].kind){case"moveleft":q=R-_*Y*X,P=U-Z*Y*X;break;case"moveright":q=R+_*Y*X,P=U+Z*K*X;break;case"movetop":q=R-Z*Y*X,P=U-_*K*X;break;case"movebottom":q=R+Z*Y*X,P=U+_*K*X}r.to(o[i].obj,0,{left:q,top:P,display:"block"},u),r.to(o[i].obj,o[i].duration,{left:R,top:U,ease:d},u)}}return r}return null},de=function(e,t,a){TweenLite.ticker.removeEventListener("tick",fe),X("onmoved",e,x.length),a&&pe(e,!0)},fe=function(){if(F){var e=parseInt(TweenLite.ticker.frame-z),t=TweenLite.ticker.time-tickerStartTime;if(e>5&&e/t<.9*W){W>20?(W-=5,TweenLite.ticker.fps(W)):TweenLite.ticker.removeEventListener("tick",fe);var a=F.timeScale();a<1.5&&F.timeScale(1.07*a)}}},me=function(a,o,n,l){A&&"slide2"==R&&a>0&&(ae(A,!1),A.paused&&ie(!1,U,!0),R="start"),l&&ue(a),X("onmoving",a,x.length),t.scrollTo(0,0),e.title=B+" #"+parseInt(a+1),W=60,TweenLite.ticker.fps(W);var s=t.innerHeight-Z();i(k,{top:s/2+(E&&1!=c(E,"overlay")&&0==E.offsetTop?E.offsetHeight:0)+"px"}),h&&i(h,{top:s/2+"px"});var u=a;N>-1&&(a>0||0==a&&N!=x.length-1)&&aM?M:D,P=((d/q-1)/100*(100-1*I)+1)*q,G=-L/2+g/100*(100-I),_=-C/2+v/100*(100-I);if(o){var K="M0,0,C0.2,0,0.374,0.306,0.507,0.512,0.652,0.738,0.822,1,1,1",J="M0,0,C0.266,0.412,0.436,0.654,0.565,0.775,0.609,0.816,0.78,1,1,1",$="M0,0,C0.434,0.004,0.79,0.698,1,1",ee=K,te=K;if((Math.abs(H-g)>100||Math.abs(O-v)>100)&&(d/S<.9||d/S>1.1)&&(p=.5),p>0){n*=1.3+p/3;var oe=1;d1.1*d&&(ee=J,te=$),V!=m&&Math.abs(H-g)<100&&Math.abs(O-v)<100&&(ee=K,te=K),S>d&&S>.7*d&&Math.abs(V-m)<90&&S/d<2&&(te=J);var ne=CustomEase.create("scale",ee),re=CustomEase.create("move",te),le=CustomEase.create("rotate","M0,0,C0.496,0,0.609,0.272,0.7,0.5,0.786,0.716,0.822,1,1,1");(F=new TimelineLite).timeScale(1),TweenLite.ticker.addEventListener("tick",fe),z=TweenLite.ticker.frame,tickerStartTime=TweenLite.ticker.time,y&&(f?F.to(h,n,{rotationZ:m,ease:le},0):F.to(h,n,{rotation:m,ease:le},0),F.to(h,n,{scale:P,ease:ne},0),F.to(y,n,{x:G,y:_,ease:re},0)),f?F.to(k,n,{rotationZ:m,ease:le},0):F.to(k,n,{rotation:m,ease:le},0),F.to(k,n,{scale:d,ease:ne},0),F.to(w,n,{x:g,y:v,ease:re,onComplete:de,onCompleteParams:[a,n,l]},0)}else y&&(f?TweenLite.set(h,{scale:P,rotationZ:m}):TweenLite.set(h,{scale:P,rotation:m}),TweenLite.set(y,{x:G,y:_})),f?TweenLite.set(k,{scale:d,rotationZ:m}):TweenLite.set(k,{scale:d,rotation:m}),TweenLite.set(w,{x:g,y:v}),X("onmoved",a,x.length),l&&pe(a,!0);!function(t){for(var a=0;a-1&&e>N)var n=pe(N,!1);return n?n.eventCallback("onComplete",me,[e,t,a,o]):me(e,t,a,o),n},be=function(e,t){if(e>-1&&e0&&be(N-1,!0)},he=function(){var e=-1;N>-1&&N-1&&t-1&&(0==e&&ue(0),be(e,!0))},ke=function(e,t){if(I||(K(!1),!A||"autoplay"!=R&&"autoplayonly"!=R||ae(A,!1)),I=!0,t&&t>0)M=t;else if(e||-1==(e=he())&&(e=0),e>-1){0==e&&ue(0);var a=be(e,!0);N=e,M=parseFloat(x[e].displayTime),a&&(M+=a.duration())}else M=0;if(M>0){for(j=0;jM&&(M=n)}T=setTimeout(function(){function e(){M>0&&(N600&&(clearInterval(a),e())},100)},1e3*M)}else we()},we=function(){clearTimeout(T),I=!1,K(!0),A&&"autoplayonly"==R&&oe(A)},xe=function(){var t,a=!0;e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement||(a=!1),a!=C&&(t=!(C=a),_(e.getElementById("xplplayergofullscreen"),t),_(e.getElementById("xplplayerexitfullscreen"),!t),!C&&I&&we())};if(a&&(e.addEventListener("keydown",function(e){(e.keyCode>=32&&e.keyCode<=34||e.keyCode>=37&&e.keyCode<=40)&&e.preventDefault()},!1),e.addEventListener("keyup",function(t){if(9===t.keyCode||t.keyCode>=32&&t.keyCode<=34||t.keyCode>=37&&t.keyCode<=40){switch(t.keyCode){case 33:case 37:case 38:I&&we(),ve();break;case 34:case 39:case 40:I&&we(),ye();break;case 32:I?we():e.getElementById("xplplayerplay")&&ke()}t.preventDefault()}},!1),e.addEventListener("touchstart",function(e){G.startX=e.changedTouches[0].screenX,G.startY=e.changedTouches[0].screenY,G.startTime=(new Date).getTime(),G.touchInit||(G.touchInit=!0)},!1),e.addEventListener("touchend",function(e){var t=e.changedTouches[0].screenX-G.startX;(new Date).getTime()-G.startTime<200&&(t>30||t<-30)&&(t<-30?ye():t>30&&ve(),e.preventDefault())},!1)),t.addEventListener("resize",function(){ce(U),ge(N,!1,.2,!1),xe()},!1),t.addEventListener("hashchange",function(){t.location.hash!==b&&(b=t.location.hash,N=$(b),be(N,!0))},!1),d){h&&i(h,{display:"block"}),i(k,{display:"block"});var je=$(b),Ee=e.getElementsByClassName("xplitem");for(j=0;jt.offsetHeight){var n=e.pageX-o(t).left;n<0&&(n=0),n>t.offsetWidth&&(n=t.offsetWidth),a=n/t.offsetWidth}else{var r=e.pageY-o(t).top;r<0&&(r=0),r>t.offsetHeight&&(r=t.offsetHeight),a=1-r/t.offsetHeight}xplain.enableaudio(a>.01,a)}function u(e){i(e)}s.addEventListener("mousedown",function(e){i(e),s.addEventListener("mousemove",u,!1)},!1),s.addEventListener("mouseup",function(e){s.removeEventListener("mousemove",u)},!1),s.addEventListener("mouseleave",function(e){s.removeEventListener("mousemove",u)},!1),ie(!q,U,q)}}(),ue(je),ge(je,!1,0,!0),K(!1),Y(),J(),function(t){function a(){L=!0,K(!I),Y(),J(),n&&i(n,{width:(N+1)/x.length*100+"%"})}var o=t.length;if(0==o)a();else for(var n=e.getElementById("xplplayerprogressindicator"),r=0;r0&&ke(1,v),xe(),{goto:be,prev:ve,next:ye,navigate:function(e){I&&we(),e<0?ve():ye()},play:ke,stop:we,reload:function(){ke(0,0)},playing:function(){return I},share:function(a){var o=e.title,n=t.location;switch(a){case"facebook":t.open("https://www.facebook.com/sharer.php?u="+encodeURI(n),"_blank");break;case"twitter":t.open("https://twitter.com/intent/tweet/?text="+encodeURIComponent(o),"_blank");break;case"linkedin":t.open("https://www.linkedin.com/shareArticle?mini=true&url="+encodeURI(n)+"&title="+encodeURIComponent(o),"_blank");break;case"xing":t.open("https://www.xing.com/social_plugins/share?url="+encodeURI(n),"_blank");break;case"email":t.location.href="mailto:?subject="+encodeURIComponent(o)+"&body="+encodeURI(n)}},enableloop:function(e){o=e},enableaudio:ie,audioenabled:function(){return!q},playmedia:function(t,a,o,n){var r="string"==typeof t?e.getElementById(t):t;if(r){var l=r.children.length>1?r.children[1]:null;if(l)switch(a||(n=!1,a=l.paused?"play":"pause"),l.tagName.toLowerCase()){case"audio":switch(a){case"play":ie(!0),o&&(l.currentTime=o);var s=ae(l,!0);return s&&!n&&D.push(l),s;case"pause":oe(l);break;case"stop":ne(l)}}}},gofullscreen:function(){var t=e.body;t.requestFullscreen?t.requestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.msRequestFullscreen&&t.msRequestFullscreen()},exitfullscreen:function(){e.exitFullscreen?e.exitFullscreen():e.mozCancelFullScreen?e.mozCancelFullScreen():e.webkitExitFullscreen?e.webkitExitFullscreen():e.msExitFullscreen&&e.msExitFullscreen()},addEventListener:function(e,t){var a=new Object;a.name=e,a.handler=t,P.push(a)},removeEventListener:function(e,t){for(var a=0;a