Seditio Source
Root |
./othercms/xenForo 2.2.8/js/xf/lightbox.min.js
'use strict';!function(e,l,k,n){XF.Lightbox=XF.Element.newHandler({options:{lbInfobar:1,lbSlideShow:1,lbThumbsAuto:1,lbUniversal:0,lbTrigger:".js-lbImage",lbContainer:".js-lbContainer",lbHistory:0,lbPrev:null,lbNext:null},$sidebar:null,initialUrl:null,prevUrl:null,nextUrl:null,thumbsInitialized:!1,lastIndex:null,isJumping:!1,pushStateCount:0,init:function(){this.initContainers();e(k).on("xf:reinit",XF.proxy(this,"checkReInit"));e(k).on("click","a.js-lightboxCloser",function(a){a=e(a.target);XF.findRelativeIf("< .fancybox-inner | .fancybox-toolbar",
a).find("[data-fancybox-close]").click()})},getInstance:function(){return e.fancybox.getInstance()},handlePopstate:function(a){if(this.options.lbHistory){var b=this.getInstance();this.pushStateCount--;a&&"object"===typeof a&&a.hasOwnProperty("slide_src")?(this.isJumping=!0,b&&(a=b.findIndexFromSrc(a.slide_src),null!==a&&b.jumpTo(a))):b&&(this.pushStateCount=0,b.close())}},initContainers:function(){var a=this;(this.options.lbUniversal?this.$target:this.$target.find(this.options.lbContainer)).each(function(){a._initContainer(e(this))})},
_initContainer:function(a){if(!a.data("lbInitialized")){a.data("lbInitialized",!0);var b=this;a.find(this.options.lbTrigger).on("click.xflbtrigger mousedown.xflbtrigger",function(d){var g=e(d.target).parent();("mousedown"===d.type?2===d.which:d.ctrlKey||d.altKey||d.metaKey||d.shiftKey)&&b.isSingleImage(g)&&(d.stopImmediatePropagation(),l.open(g.data("src"),"_blank"));return!0});a.find(b.options.lbTrigger).each(function(){var d=e(this);d.on("lightbox:image-checked",XF.proxy(b,"imageChecked"));b.checkImageSizes(d,
a)});var c=e.extend(this.getConfig(a),{selector:this.options.lbTrigger+'[data-fancybox="'+this.getContainerId(a)+'"]'});a.fancybox(c);a.on("lightbox:init",XF.proxy(this,"onInit"));a.on("lightbox:activate",XF.proxy(this,"onActivate"));a.on("lightbox:after-load",XF.proxy(this,"afterLoad"));a.on("lightbox:before-show",XF.proxy(this,"beforeShow"));a.on("lightbox:after-show",XF.proxy(this,"afterShow"));a.on("lightbox:before-close",XF.proxy(this,"beforeClose"));a.on("lightbox:after-close",XF.proxy(this,
"afterClose"))}},checkReInit:function(a,b){if(b!=k&&this.$target.find(b).length){a=e(b);b=this.options.lbTrigger;var c=this.options.lbContainer;this.options.lbUniversal?(a.is(b)||a.find(b).length)&&this._reInitContainer(this.$target):a.is(c)||a.find(c).length?this.initContainers():a.closest(c).length&&(a.is(b)||a.find(b).length)&&this._reInitContainer(a.closest(c))}},_reInitContainer:function(a){if(a.data("lbInitialized")){var b=this.getInstance();b&&b.close();a.removeData("lbInitialized");a.off("onThumbsShow.fb");
a.off("onThumbsHide.fb");this.thumbsInitialized=!1;a.off("lightbox:init");a.off("lightbox:activate");a.off("lightbox:before-show");a.off("lightbox:after-show");a.off("lightbox:before-close");a.off("lightbox:after-close");this._initContainer(a)}},initSidebar:function(a){var b=this.getInstance();b&&(b=b.$refs.container,this.$sidebar?a&&this.$sidebar.addClass("is-loading"):(this.$sidebar=a=e("<div />").html('<div class="fancybox-sidebar-content"></div><div class="fancybox-sidebar-loader"><i class="fa--xf fa'+
XF.config.fontAwesomeWeight+' fa-spinner-third fa-4x"></i></div>').addClass("fancybox-sidebar").addClass(a?"is-loading":""),this.$sidebar.appendTo(b),b.find(".fancybox-button[data-fancybox-sidebartoggle]").off("click.lbSidebar").on("click.lbSidebar",XF.proxy(this,"toggleSidebar")),e(l).on("resize.lbSidebar",XF.proxy(this,"sidebarCheckSize"))),b.addClass("fancybox-has-sidebar"),this.isSidebarEnabled()&&(this.$sidebar.addClass("is-active"),b.addClass("fancybox-show-sidebar")),this.sidebarCheckSize())},
isSidebarEnabled:function(){return!XF.LocalStorage.get("lbSidebarDisabled")&&XF.Breakpoint.isAtOrWiderThan("full")},setIsSidebarEnabled:function(a){a?XF.LocalStorage.remove("lbSidebarDisabled"):XF.LocalStorage.set("lbSidebarDisabled","1",!0)},toggleSidebar:function(){this.$sidebar.hasClass("is-active")?this.closeSidebar(!1):this.openSidebar(!1)},openSidebar:function(a){var b=this.getInstance(),c=b.$refs.container;this.$sidebar.addClass("is-active");c.addClass("fancybox-show-sidebar");a||this.setIsSidebarEnabled(!0);
b.update()},closeSidebar:function(a){if(this.$sidebar){var b=this.getInstance(),c=b.$refs.container;this.$sidebar.removeClass("is-active");c.removeClass("fancybox-show-sidebar");a||this.setIsSidebarEnabled(!1);b.update()}},sidebarCheckSize:function(){var a=this.getInstance().$refs.container;XF.Breakpoint.isAtOrNarrowerThan("medium")?(a.removeClass("fancybox-has-sidebar"),this.closeSidebar(!0)):a.addClass("fancybox-has-sidebar")},initThumbs:function(){var a=this.getInstance(),b=this;if(a&&!this.thumbsInitialized){if(this.options.lbThumbsAuto){var c=
this.measureThumbsScrollbar();this.setThumbsScrollbarOffset(c)}a.$refs.container.off("onThumbsShow.fb").on("onThumbsShow.fb",function(){c=b.measureThumbsScrollbar();b.setThumbsScrollbarOffset(c)});a.$refs.container.off("onThumbsHide.fb").on("onThumbsHide.fb",function(){b.setThumbsScrollbarOffset(0)});this.thumbsInitialized=!0}},measureThumbsScrollbar:function(){var a=this.getInstance();return a&&a.Thumbs&&a.Thumbs.isActive?XF.measureScrollBar(a.Thumbs.$grid,"height"):0},setThumbsScrollbarOffset:function(a){var b=
this.getInstance();b&&b.Thumbs&&b.Thumbs.isActive&&b.$refs.caption.css("padding-bottom",a+"px")},updateLastIndex:function(){var a=this.getInstance();a&&(a=Object.keys(a.group),this.lastIndex=parseInt(a[a.length-1]))},onInit:function(a,b,c){this.updateLastIndex();this.prevUrl=this.options.lbPrev;this.nextUrl=this.options.lbNext;this.thumbsInitialized=!1},onActivate:function(){XF.Modal.open();XF.Lightbox.activeLb=this},afterLoad:function(a,b,c,d){"ajax"===d.type&&(a=d.$content,b=a.find(".js-embedContent"),
c={},b.length&&(c[b.data("media-site-id")]=!0,XF.applyJsState(XF.config.jsState,c),d.$slide.removeClass("fancybox-slide--video").addClass("fancybox-slide--embed")),XF.activate(a))},beforeShow:function(a,b,c,d){XF.hideOverlays();XF.hideTooltips();if(a=d.opts.$orig)c=c.$refs.container,a.data("lb-sidebar")||a.data("lb-sidebar-href")?this.initSidebar(!0):(c.removeClass("fancybox-has-sidebar"),this.closeSidebar(!0)),a.data("lb-type-override")&&(d.contentType=a.data("lb-type-override"));this.initThumbs()},
afterShow:function(a,b,c,d){a=d.opts.$orig;b=c.$refs.container;var g=this;var h=a?a.attr("href")||d.src:d.src;c.$refs.toolbar.find("[data-fancybox-nw]").attr("href",h).attr("target","_blank");this.options.lbHistory&&!this.isJumping&&(XF.History.push({slide_src:d.src},null,h),this.pushStateCount++);this.isJumping=!1;(a.data("lb-sidebar")||a.data("lb-sidebar-href"))&&b.hasClass("fancybox-has-sidebar")&&(c=a?a.data("lb-sidebar-href")||h:h,XF.ajax("get",c,{lightbox:!0},function(f){g.sidebarLoaded(f)},
{skipDefault:!0,skipError:!0,global:!1}));d.index===this.lastIndex&&this.nextUrl?XF.ajax("get",this.nextUrl,{lightbox:!0},function(f){g.nextLoaded(f)},{skipDefault:!0,skipError:!0,global:!1}):0===d.index&&this.prevUrl&&XF.ajax("get",this.prevUrl,{lightbox:!0},function(f){g.prevLoaded(f)},{skipDefault:!0,skipError:!0,global:!1})},sidebarLoaded:function(a){if(a.html&&this.$sidebar){var b=this;XF.setupHtmlInsert(a.html,function(c,d,g){b.$sidebar&&(b.$sidebar.find(".fancybox-sidebar-content").html(c),
b.$sidebar.removeClass("is-loading"))})}},prevLoaded:function(a){if(a.html){var b=this,c=this.getInstance();c&&XF.setupHtmlInsert(a.html,function(d,g,h){d=d.find(b.options.lbContainer);d.find(b.options.lbTrigger).reverse().each(function(){var f=e(this);b.updateCaption(f);c.prependContent(f);c.reindexSlides();f=c.currIndex;var m=c.prevIndex;f++;m++;c.currIndex=f;c.currPos=f;c.current.index=f;c.current.pos=f;c.prevIndex=m;c.prevPos=m});c.update();c.Thumbs.update();b.updateLastIndex();b.prevUrl=d.data("lb-prev");
h(!0)})}else this.prevUrl=null},nextLoaded:function(a){if(a.html){var b=this,c=this.getInstance();c&&XF.setupHtmlInsert(a.html,function(d,g,h){d=d.find(b.options.lbContainer);d.find(b.options.lbTrigger).each(function(){var f=e(this);b.updateCaption(f);c.addContent(f)});b.updateLastIndex();b.nextUrl=d.data("lb-next");h(!0)})}else this.nextUrl=null},beforeClose:function(a,b,c,d){this.options.lbHistory&&this.pushStateCount&&(XF.History.go(-this.pushStateCount),this.pushStateCount=0);this.$sidebar&&(this.$sidebar.remove(),
this.$sidebar=null,e(l).off("resize.lbSidebar"))},afterClose:function(){XF.Modal.close();XF.Lightbox.activeLb=null},getContainerId:function(a){return"lb-"+a.data("lb-id")},imageChecked:function(a,b,c,d){a=!0;d&&this.isImageNaturalSize(d)&&(a=!1);a&&(b.attr("data-fancybox",this.getContainerId(c)),b.css("cursor","pointer"),this.updateCaption(b))},checkImageSizes:function(a,b){var c=e.Event("lightbox:image-checked");if(this.isSingleImage(a)){var d=a.find("img[data-zoom-target=1]");d.parents("a").length||
setTimeout(function(){if(d.prop("complete"))a.trigger(c,[a,b,d]);else d.on("load",function(){a.trigger(c,[a,b,d])})},500)}else a.trigger(c,[a,b])},isImageNaturalSize:function(a){var b=a.width(),c=a.height(),d=a.prop("naturalWidth");a=a.prop("naturalHeight");return d&&a?b==d&&c==a:!0},isSingleImage:function(a){return a.is("div")&&a.data("single-image")},updateCaption:function(a){if(!a.data("caption")){var b=a.closest(this.options.lbContainer),c=a.find("img"),d=b.data("lb-id");b={title:b.data("lb-caption-title")||
c.attr("alt")||c.attr("title")||"",desc:a.data("lb-caption-desc")||b.data("lb-caption-desc")||"",href:a.data("lb-caption-href")||(d?l.location.href.replace(/#.*$/,"")+"#"+d:null),extra_html:a.data("lb-caption-extra-html")||""};a.attr("data-caption",Mustache.render('<h4>{{title}}</h4><p><a href="{{href}}" class="js-lightboxCloser">{{desc}}</a>{{{extra_html}}}</p>',b))}},getConfig:function(a){return{hash:!1,lang:"xf",i18n:{xf:this.getLanguage()},loop:!(this.options.lbPrev||this.options.lbNext),wheel:!1,
closeExisting:!0,smallBtn:!1,buttons:"zoom newWindow fullScreen slideShow download thumbs close sidebarToggle".split(" "),btnTpl:{zoom:'<button data-fancybox-zoom class="fancybox-button fancybox-button--zoom" title="{{ZOOM}}"><i></i><i></i></button>',newWindow:'<a data-fancybox-nw class="fancybox-button fancybox-button--nw" title="{{NEW_WINDOW}}" href="javascript:;"><i></i></a>',fullScreen:'<button data-fancybox-fullscreen class="fancybox-button fancybox-button--fsenter" title="{{FULL_SCREEN}}"><i></i><i></i></button>',
slideShow:'<button data-fancybox-play class="fancybox-button fancybox-button--play" title="{{PLAY_START}}"><i></i><i></i></button>',download:'<a download data-fancybox-download class="fancybox-button fancybox-button--download" title="{{DOWNLOAD}}" href="javascript:;"><i></i></a>',thumbs:'<button data-fancybox-thumbs class="fancybox-button fancybox-button--thumbs" title="{{THUMBS}}"><i></i></button>',close:'<button data-fancybox-close class="fancybox-button fancybox-button--close" title="{{CLOSE}}"><i></i></button>',
sidebarToggle:'<div class="fancybox-sidebartoggle"><button data-fancybox-sidebartoggle class="fancybox-button fancybox-button--sidebartoggle" title="{{SIDEBAR_TOGGLE}}"><i></i></button></div>',arrowLeft:'<button data-fancybox-prev class="fancybox-button fancybox-button--arrow_left" title="{{PREV}}"><i></i></button>',arrowRight:'<button data-fancybox-next class="fancybox-button fancybox-button--arrow_right" title="{{NEXT}}"><i></i></button>'},slideShow:this.options.lbSlideShow?{autoStart:!1,speed:3E3}:
!1,thumbs:{autoStart:this.options.lbThumbsAuto?!0:!1,axis:"x"},video:{autoStart:!1},infobar:this.options.lbInfobar,onInit:function(b){var c=e.Event("lightbox:init");a.trigger(c,[a,b])},beforeLoad:function(b,c){var d=e.Event("lightbox:before-load");a.trigger(d,[a,b,c])},afterLoad:function(b,c){var d=e.Event("lightbox:after-load");a.trigger(d,[a,b,c])},beforeShow:function(b,c){var d=e.Event("lightbox:before-show");a.trigger(d,[a,b,c])},afterShow:function(b,c){var d=e.Event("lightbox:after-show");a.trigger(d,
[a,b,c])},beforeClose:function(b,c){var d=e.Event("lightbox:before-close");a.trigger(d,[a,b,c])},afterClose:function(b,c){var d=e.Event("lightbox:after-close");a.trigger(d,[a,b,c])},onActivate:function(b){var c=e.Event("lightbox:activate");a.trigger(c,[a,b])},onDeactivate:function(b){var c=e.Event("lightbox:deactivate");a.trigger(c,[a,b])}}},getLanguage:function(){return{CLOSE:XF.phrase("lightbox_close"),NEXT:XF.phrase("lightbox_next"),PREV:XF.phrase("lightbox_previous"),ERROR:XF.phrase("lightbox_error"),
PLAY_START:XF.phrase("lightbox_start_slideshow"),PLAY_STOP:XF.phrase("lightbox_stop_slideshow"),FULL_SCREEN:XF.phrase("lightbox_full_screen"),THUMBS:XF.phrase("lightbox_thumbnails"),DOWNLOAD:XF.phrase("lightbox_download"),SHARE:XF.phrase("lightbox_share"),ZOOM:XF.phrase("lightbox_zoom"),NEW_WINDOW:XF.phrase("lightbox_new_window"),SIDEBAR_TOGGLE:XF.phrase("lightbox_toggle_sidebar")}}});XF.Lightbox.activeLb=null;e(k).on("xf:reinit",function(a,b){if(b!=k){var c=e(b).closest("[data-xf-init~=lightbox]");
c.length&&(XF.Element.getHandler(c,"lightbox")||setTimeout(function(){XF.Element.initializeElement(c)},0))}});XF.History.handle(function(a){var b=XF.Lightbox.activeLb;if(b)return b.handlePopstate(a),!0});XF.Element.register("lightbox","XF.Lightbox")}(jQuery,window,document);