/*
This license text has to stay intact at all times:
Author: Emrah BASKAYA @ www.hesido.com
This script is registered for use by:
Synology Inc.
Under the following licence agreement:
http://www.hesido.com/licenses.php?page=flexcrollcommercialunlimited
Key for this license: 20111109013412901
MD5 hash for this license: abdb3120e42f86d3af038d81a2ef5d36
End of license text---
*/
//fleXcroll v2.0.0
/* Copyright (c) 2016 Synology Inc. All rights reserved. */
var fleXenv={fleXlist:[],fleXcrollInit:function(){if(document.getElementById){document.write('')}this.addTrggr(window,"load",this.globalInit)},fleXcrollMain:function(aD,E){var aB=document,M=window,A=navigator,L=(A.msPointerEnabled&&A.msMaxTouchPoints>0),am={};E=E||false;if(!aB.getElementById||!aB.createElement){return}if(typeof(aD)=="string"){aD=document.getElementById(aD)}if(aD==null||A.userAgent.indexOf("OmniWeb")!=-1||((A.userAgent.indexOf("AppleWebKit")!=-1||A.userAgent.indexOf("Safari")!=-1)&&!(typeof(HTMLElement)!="undefined"&&HTMLElement.prototype))||A.vendor=="KDE"||(A.platform.indexOf("Mac")!=-1&&A.userAgent.indexOf("MSIE")!=-1)){if(aD!=null){aq(aD,"flexcroll-failed","flexcroll-hide-default")}if(window.onfleXcrollFail){window.onfleXcrollFail(aD)}return}if(aD.fleXcroll){aD.fleXcroll.updateScrollBars();return}if(fleXenv.checkHidden(aD)){return}if(!aD.id||aD.id==""){var aA="flex__",aF=1;while(document.getElementById(aA+aF)!=null){aF++}aD.id=aA+aF}aD.fleXdata=new Object();aD.fleXcroll=new Object();var ay=aD.id,ak=aD.fleXdata,O=aD.fleXcroll;O.enableWillChange=true;ak.keyAct={_37:["-1s",0],_38:[0,"-1s"],_39:["1s",0],_40:[0,"1s"],_33:[0,"-1p"],_34:[0,"1p"],_36:[0,"-100p"],_35:[0,"+100p"]};ak.wheelAct=["-2s","2s"];ak.baseAct=["-2s","2s"];ak.scrollPosition=[[false,false],[false,false]];var ax=ag("contentwrapper",true),aE=ag("mcontentwrapper",true),r=ag("scrollwrapper",true),S=ag("copyholder",true);var aw=ag("domfixdiv",true),ai=ag("zoomdetectdiv",true),az=false;S.sY.border="1px solid blue";S.fHide();aD.style.overflow="hidden";ai.sY.fontSize="12px";ai.sY.height="1em";ai.sY.width="1em";ai.sY.position="absolute";ai.sY.zIndex="-999";ai.fHide();var av=aD.offsetHeight,H=aD.offsetWidth;aG(aD,S,"0px",["border-left-width","border-right-width","border-top-width","border-bottom-width"]);var ar=aD.offsetHeight,v=aD.offsetWidth,aC=H-v,ao=av-ar;var ap=(aD.scrollTop)?aD.scrollTop:0,Y=(aD.scrollLeft)?aD.scrollLeft:0;var an=document.location.href,N=/#([^#.]*)$/;var al=["textarea","input","select"];ak.scroller=[];ak.forcedBar=[];ak.containerSize=ak.cntRSize=[];ak.contentSize=ak.cntSize=[];ak.edge=[false,false];ak.touchPrevent=false;ak.touchFlick=false;ak.reqS=[];ak.barSpace=[0,0];ak.forcedHide=[];ak.forcedPos=[];ak.paddings=[];ak.externaL=[false,false];ak.touchPos=[0,0];while(aD.firstChild){ax.appendChild(aD.firstChild)}ax.appendChild(aw);aD.appendChild(aE);aD.appendChild(S);var af=ah(aD,"position");if(af!="absolute"&&af!="fixed"){aD.style.position=af="relative"}if(af=="fixed"){aD.style.position="absolute"}var ae=ah(aD,"text-align");aD.style.textAlign="left";aE.sY.width="100px";aE.sY.height="100px";aE.sY.top="0px";aE.sY.left="0px";aG(aD,S,"0px",["padding-left","padding-top","padding-right","padding-bottom"]);var ac=aD.offsetWidth,K=aD.offsetHeight,au;au=aE.offsetHeight;aE.sY.borderBottom="2px solid black";if(aE.offsetHeight>au){az=true}aE.sY.borderBottomWidth="0px";aG(S,aD,false,["padding-left","padding-top","padding-right","padding-bottom"]);Z(aE);Z(aD);ak.paddings[0]=aE.yPos-aD.yPos;ak.paddings[2]=aE.xPos-aD.xPos;aD.style.paddingTop=ah(aD,"padding-bottom");aD.style.paddingLeft=ah(aD,"padding-right");Z(aE);Z(aD);ak.paddings[1]=aE.yPos-aD.yPos;ak.paddings[3]=aE.xPos-aD.xPos;aD.style.paddingTop=ah(S,"padding-top");aD.style.paddingLeft=ah(S,"padding-left");var aa=ak.paddings[2]+ak.paddings[3],ab=ak.paddings[0]+ak.paddings[1];aD.style.position=af;aE.style.textAlign=ae;aG(aD,aE,false,["padding-left","padding-right","padding-top","padding-bottom"]);r.sY.width=aD.offsetWidth+"px";r.sY.height=aD.offsetHeight+"px";aE.sY.width=ac+"px";aE.sY.height=K+"px";r.sY.position="absolute";r.sY.top="0px";r.sY.left="0px";ak.tDivZ=r.sY.zIndex;aE.appendChild(ax);aD.appendChild(r);r.appendChild(ai);ax.sY.position="relative";aE.sY.position="relative";ax.sY.top="0";ax.sY.width="100%";aE.sY.overflow="hidden";aE.sY.left=""+(0-ak.paddings[2])+"px";aE.sY.top=""+(0-ak.paddings[0])+"px";ak.zTHeight=ai.offsetHeight;ak.getContentWidth=function(){var c=ax.childNodes,h=compPad=0;for(var g=0;gak.mTBox[1])?1:0;ak.mOnYEdge=(gak.mTBox[3])?1:0;ak.xAw=c-ak.inMposX;ak.yAw=k-ak.inMposY;ak.sXdir=(ak.xAw>40)?1:(ak.xAw<-40)?-1:0;ak.sYdir=(ak.yAw>40)?1:(ak.yAw<-40)?-1:0;if((ak.sXdir!=0||ak.sYdir!=0)&&!ak.tSelectFunc){ak.tSelectFunc=M.setInterval(function(){if(ak.sXdir==0&&ak.sYdir==0){M.clearInterval(ak.tSelectFunc);ak.tSelectFunc=false;return}n();if(ak.mOnXEdge==1||ak.mOnYEdge==1){O.setScrollPos((ak.sXdir*ak.mOnXEdge)+"s",(ak.sYdir*ak.mOnYEdge)+"s",true)}},45)}}function at(){fleXenv.remTrggr(aB,"mousemove",i);if(ak.tSelectFunc){M.clearInterval(ak.tSelectFunc)}ak.tSelectFunc=false;if(ak.barClickRetard){M.clearTimeout(ak.barClickRetard)}if(ak.barClickScroll){M.clearInterval(ak.barClickScroll)}}function P(){if(ax.sY.willChange!=="top"){ax.sY.willChange="top"}if(ax.willChangeTask){clearTimeout(ax.willChangeTask)}ax.willChangeTask=setTimeout(J,3000)}function J(){ax.sY.willChange="";ax.willChangeTask=undefined}function F(c){if(ak.touchFlick){window.clearInterval(ak.touchFlick);ak.touchFlick=false}if(!c){r.sY.zIndex=ak.tDivZ}}function n(){ak.xScrld=(M.pageXOffset)?M.pageXOffset:(aB.documentElement&&aB.documentElement.scrollLeft)?aB.documentElement.scrollLeft:0;ak.yScrld=(M.pageYOffset)?M.pageYOffset:(aB.documentElement&&aB.documentElement.scrollTop)?aB.documentElement.scrollTop:0}O.formUpdate=function(){for(var h=0,g;g=al[h];h++){var c=aD.getElementsByTagName(g);for(var k=0,l;l=c[k];k++){if(!l.fleXprocess){fleXenv.addTrggr(l,"focus",function(){aD.focusProtect=true});fleXenv.addTrggr(l,"blur",onblur=function(){aD.focusProtect=false});l.fleXprocess=true}}}};aD.scrollUpdate=O.updateScrollBars=function(s){if(r.getSize[1]()===0||r.getSize[0]()===0){return}ax.sY.padding="1px";var p=ak.reqS[0],h=ak.reqS[1],o=r.vrt,m=r.hrz,k,g,q=[];r.sY.width=aD.offsetWidth-aC+"px";r.sY.height=aD.offsetHeight-ao+"px";q[0]=ak.cntRSize[0];q[1]=ak.cntRSize[1];ak.reqS[0]=ak.getContentWidth()>ak.cntRSize[0];ak.reqS[1]=ak.getContentHeight()>ak.cntRSize[1];var l=(p!=ak.reqS[0]||h!=ak.reqS[1]||q[0]!=ak.cntRSize[0]||q[1]!=ak.cntRSize[1])?true:false;o.sDv.setVisibility(ak.reqS[1]);m.sDv.setVisibility(ak.reqS[0]);k=(ak.reqS[1]||ak.forcedBar[1]);g=(ak.reqS[0]||ak.forcedBar[0]);ak.getContentWidth();ak.getContentHeight();ak.setHeight();ak.setWidth();if(!ak.reqS[0]||!ak.reqS[1]||ak.forcedHide[0]||ak.forcedHide[1]){m.jBox.fHide()}else{m.jBox.fShow()}if(k){X(o,(g&&!ak.forcedHide[0])?ak.barSpace[1]:0)}else{ax.sY.top="0"}if(g){X(m,(k&&!ak.forcedHide[1])?ak.barSpace[0]:0)}else{ax.sY.left="0"}if(l&&!s){O.updateScrollBars(true)}ax.sY.padding="0px";ak.edge[0]=ak.edge[1]=false};aD.contentScroll=O.setScrollPos=function(h,g,p,o,m){var l,k=1;if(O.enableWillChange){P()}if((h||h===0)&&ak.scroller[0]){h=C(h,0);h*=(typeof m!=="undefined")?m:k;l=r.hrz.sBr;l.trgtScrll=(p)?Math.min(Math.max(l.mxScroll,l.trgtScrll-h),0):-h;l.realScrollPos()}if((g||g===0)&&ak.scroller[1]){g=C(g,1);g*=(typeof m!=="undefined")?m:k;l=r.vrt.sBr;l.trgtScrll=((p)?Math.min(Math.max(l.mxScroll,l.trgtScrll-g),0):-g);l.realScrollPos()}if(!p){ak.edge[0]=ak.edge[1]=false}if(aD.onfleXcroll&&!o){aD.onfleXcroll()}return ak.scrollPosition};O.scrollContent=function(g,c){g=Math.abs(g)<0.001?0:g;c=Math.abs(c)<0.001?0:c;return O.setScrollPos(g,c,true)};O.scrollToElement=function(g){if(g==null||!V(g)){return}var c=B(g);O.setScrollPos(c[0]+ak.paddings[2],c[1]+ak.paddings[0],false);O.setScrollPos(0,0,true)};aG(S,aD,"0px",["border-left-width","border-right-width","border-top-width","border-bottom-width"]);this.putAway(S,r);aD.scrollTop=0;aD.scrollLeft=0;O.formUpdate();this.fleXlist[this.fleXlist.length]=aD;aq(aD,"flexcrollactive",false);O.updateScrollBars();O.setScrollPos(Y,ap,true);if(an.match(N)){O.scrollToElement(aB.getElementById(an.match(N)[1]))}ak.sizeChangeDetect=M.setInterval(function(){var c=ai.offsetHeight;if(c!=ak.zTHeight){O.updateScrollBars();ak.zTHeight=c}},2500);function C(g,h){var c=g.toString();g=parseFloat(c);return parseInt((c.match(/p$/))?g*ak.cntRSize[h]*0.9:(c.match(/s$/))?g*ak.cntRSize[h]*0.1:g)}function ah(g,c){return fleXenv.getStyle(g,c)}function aG(h,g,o,m){var l=new Array();for(var k=0;k0&&ak.scrollPosition[g][1]==ak.scrollPosition[g][0])||(ak.moveDelta[g]<0&&ak.scrollPosition[g][0]==0)){ak.touchPrevent=false}}if(!ak.scroller[g]&&ak.moveDelta[1-g]!==0&&Math.abs(ak.moveDelta[g]/ak.moveDelta[1-g])>1.1){ak.touchPrevent=false}}if(ak.touchPrevent){h.preventDefault();if(!L){r.sY.zIndex="9999"}}else{r.sY.zIndex=ak.tDivZ}}function e(h,g){var c=h<0?-1:1,k=h*g.velocityRate,k=Math.abs(k)<1?c*1:k;tickCount=Math.abs(k*g.velocityRate)/0.8;tickCount=tickCount0)||(!L&&l.targetTouches&&l.targetTouches.length>0)){return false}fleXenv.remTrggr(aD,L?"MSPointerMove":"touchmove",d);fleXenv.remTrggr(aD,L?"MSPointerUp":"touchend",j);if((ak.scroller[0]&&(ak.moveDelta)&&Math.abs(ak.moveDelta[0])>6)||(ak.scroller[1]&&(ak.moveDelta)&&Math.abs(ak.moveDelta[1])>6)){var k=0,g={tickRate:1.5,minTickCount:65,velocityRate:4/5},m=e(ak.moveDelta[0],g),h=e(ak.moveDelta[1],g),c=parseInt(Math.max(m.tickCount,h.tickCount),10);F(true);ak.touchFlick=window.setInterval(function(){if(k==c){F();return}var o=aj(m.distance,0,c,k),p=aj(h.distance,0,c,k);O.scrollContent(o,p);k++},parseInt(25/g.tickRate,10))}}function a(c){var g=0;if(c.wheelDeltaX){g=(Math.abs(c.wheelDeltaX)>Math.abs(c.wheelDeltaY))?c.wheelDeltaX:c.wheelDeltaY;g=g/120}else{if(c.wheelDelta){g=c.wheelDelta/120}else{if(c.detail){g=-c.detail/3}}}return -g}function b(o){if(!o){o=M.event}if(!this.fleXcroll){return}var h=this,m,g,l=false,p=0,k,c;O.mDPosFix();c=(o.target)?o.target:(o.srcElement)?o.srcElement:this;if((c.id&&c.id.match(/_hscroller/))||(o.wheelDeltaX&&Math.abs(o.wheelDeltaX)>Math.abs(o.wheelDeltaY))){l=true}p=a(o);k=(p<0)?0:1;ak.edge[1-k]=false;if((ak.edge[k]&&!l)||(!ak.scroller[0]&&!ak.scroller[1])){return}if(ak.scroller[1]&&!l){scrollState=O.setScrollPos(false,ak.wheelAct[k],true,null,Math.abs(p))}m=!ak.scroller[1]||l||(ak.scroller[1]&&((scrollState[1][0]==scrollState[1][1]&&p>0)||(scrollState[1][0]==0&&p<0)));if(ak.scroller[0]&&(!ak.scroller[1]||l)){scrollState=O.setScrollPos(ak.wheelAct[k],false,true,null,Math.abs(p))}g=!ak.scroller[0]||(ak.scroller[0]&&ak.scroller[1]&&m&&!l)||(ak.scroller[0]&&((scrollState[0][0]==scrollState[0][1]&&p>0)||(scrollState[0][0]==0&&p<0)));if(m&&g&&!l){ak.edge[k]=true}else{ak.edge[k]=false}if(o.preventDefault&&!((g&&l)||(m&&!l))){o.preventDefault()}return false}function V(c){while(c.parentNode){c=c.parentNode;if(c==aD){return true}}return false}function Z(g){var c=g,h=curtop=0;if(c.offsetParent){while(c){h+=c.offsetLeft;curtop+=c.offsetTop;c=c.offsetParent}}else{if(c.x){h+=c.x;curtop+=c.y}}g.xPos=h;g.yPos=curtop}function B(g){var c=g;curleft=curtop=0;while(!c.offsetHeight&&c.parentNode&&c!=ax&&ah(c,"display")=="inline"){c=c.parentNode}if(c.offsetParent){while(c!=ax){curleft+=c.offsetLeft;curtop+=c.offsetTop;c=c.offsetParent}}return[curleft,curtop]}function aq(h,g,k){fleXenv.classChange(h,g,k)}function T(o,c,k,g,m){k=Math.max(k,1);var l=c-o,h=o+(Math.pow(((1/k)*g),m)*l);return(h>0)?Math.floor(h):Math.ceil(h)}function aj(k,c,h,g){return Math.easeOutQuint(g,k,(-1)*k,h-c)}Math.easeOutExpo=function(h,g,l,k){return l*(-Math.pow(2,-10*h/k)+1)+g};Math.easeOutQuint=function(h,g,l,k){h/=k;h--;return l*(h*h*h*h*h+1)+g};Math.easeOutQuad=function(h,g,l,k){h/=k;return -l*h*(h-2)+g}},globalInit:function(){if(fleXenv.catchFastInit){window.clearInterval(fleXenv.catchFastInit)}fleXenv.prepAnchors();fleXenv.initByClass();if(window.onfleXcrollRun){window.onfleXcrollRun()}},classChange:function(f,e,h){if(!f.className){f.className=""}var g=f.className;if(e&&!g.match(RegExp("(^|\\s)"+e+"($|\\s)"))){g=g.replace(/(\S$)/,"$1 ")+e}if(h){g=g.replace(RegExp("((^|\\s)+"+h+")+($|\\s)","g"),"$2").replace(/\s$/,"")}f.className=g},prepAnchors:function(){var e=/#([^#.]*)$/,k=/(.*)#.*$/,h=/(^|\s)flexcroll-in-page-link($|\s)/,j,f,c,g,a=document.getElementsByTagName("a"),b=document.location.href;if(b.match(k)){b=b.match(k)[1]}for(c=0;g=a[c];c++){f=(g.className)?g.className:"";if(g.href&&!g.fleXanchor&&g.href.match(e)&&((g.href.match(k)&&b===g.href.match(k)[1])||f.match(h))){g.fleXanchor=true;fleXenv.addTrggr(g,"click",function(m){if(!m){m=window.event}var i=(m.srcElement)?m.srcElement:this;while(!i.fleXanchor&&i.parentNode){i=i.parentNode}if(!i.fleXanchor){return}var d=document.getElementById(i.href.match(e)[1]),l=false;if(d==null){d=(d=document.getElementsByName(i.href.match(e)[1])[0])?d:null}if(d!=null){var n=d;while(n.parentNode){n=n.parentNode;if(n.fleXcroll){n.fleXcroll.scrollToElement(d);l=n}}if(l){if(m.preventDefault){m.preventDefault()}document.location.href=b+"#"+i.href.match(e)[1];l.fleXcroll.mDPosFix();return false}}})}}},initByClass:function(d){fleXenv.initialized=true;var c=fleXenv.getByClassName(document.getElementsByTagName("body")[0],"div",(d)?d:"flexcroll");for(var e=0,f;f=c[e];e++){if(!f.fleXcroll){fleXenv.fleXcrollMain(f)}}},scrollTo:function(e,d){if(typeof(e)=="string"){e=document.getElementById(e)}if(e==null){return false}var f=e;while(f.parentNode){f=f.parentNode;if(f.fleXcroll){if(d){document.location.href="#"+d}f.fleXcroll.scrollToElement(e);f.fleXcroll.mDPosFix();return true}}return false},updateScrollBars:function(d,c){for(var e=0,f;f=fleXenv.fleXlist[e];e++){f.fleXcroll.updateScrollBars();if(c){f.fleXcroll.formUpdate()}}if(d){fleXenv.prepAnchors()}},camelConv:function(b){var b=b.split("-"),c=b[0],d;for(d=1;parT=b[d];d++){c+=parT.charAt(0).toUpperCase()+parT.substr(1)}return c},getByClassName:function(o,n,m){if(typeof(o)=="string"){o=document.getElementById(o)}if(o==null){return false}var k=new RegExp("(^|\\s)"+m+"($|\\s)"),f,g=[],p=0;var j=o.getElementsByTagName(n);for(var h=0,l;l=j[h];h++){if(l.className&&l.className.match(k)){g[p]=l;p++}}return g},checkHidden:function(d){if(d==null){return true}var c;while(d.parentNode){c=fleXenv.getStyle(d,"display");if(c=="none"){return true}d=d.parentNode}return false},getStyle:function(d,c){if(window.getComputedStyle){return window.getComputedStyle(d,null).getPropertyValue(c)}if(d.currentStyle){return d.currentStyle[fleXenv.camelConv(c)]}return false},catchFastInit:window.setInterval(function(){var b=document.getElementById("flexcroll-init");if(b!=null){fleXenv.initByClass();window.clearInterval(fleXenv.catchFastInit)}},100),putAway:function(d,c){d.parentNode.removeChild(d);d.style.display="none";c.appendChild(d)},addTrggr:function(e,d,f){if(!fleXenv.addChckTrggr(e,d,f)&&e.attachEvent){e.attachEvent("on"+d,f)}},addChckTrggr:function(e,d,f){if(e.addEventListener){e.addEventListener(d,f,false);fleXenv.w3events=true;window.addEventListener("unload",function(){fleXenv.remTrggr(e,d,f)},false);return true}else{return false}},remTrggr:function(e,d,f){if(!fleXenv.remChckTrggr(e,d,f)&&e.detachEvent){e.detachEvent("on"+d,f)}},remChckTrggr:function(e,d,f){if(e.removeEventListener){e.removeEventListener(d,f,false);return true}else{return false}}};function CSBfleXcroll(b){fleXenv.fleXcrollMain(b)}fleXenv.fleXcrollInit();