/*! PhotoSwipe Default UI - 4.0.6 - 2015-02-25
* http://photoswipe.com
* Copyright (c) 2015 Dmitry Semenov; */
!function(root,factory){"function"==typeof define&&define.amd?define(factory):"object"==typeof exports?module.exports=factory():root.PhotoSwipeUI_Default=factory()}(this,(function(){"use strict";var PhotoSwipeUI_Default;return function(pswp,framework){var ui=this,_overlayUIUpdated=!1,_controlsVisible=!0,_fullscrenAPI,_controls,_captionContainer,_fakeCaptionContainer,_indexIndicator,_shareButton,_shareModal,_shareModalHidden=!0,_initalCloseOnScrollValue,_isIdle,_listen,_loadingIndicator,_loadingIndicatorHidden,_loadingIndicatorTimeout,_galleryHasOneSlide,_options,_defaultUIOptions={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(item,captionEl){return item.title?(captionEl.children[0].innerHTML=item.title,!0):(captionEl.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return pswp.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return pswp.currItem.title||""},indexIndicatorSep:" / "},_blockControlsTap,_blockControlsTapTimeout,_onControlsTap=function(e){if(_blockControlsTap)return!0;e=e||window.event,_options.timeToIdle&&_options.mouseUsed&&!_isIdle&&_onIdleMouseMove();for(var target,uiElement,clickedClass=(e.target||e.srcElement).className,found,i=0;i<_uiElements.length;i++)(uiElement=_uiElements[i]).onTap&&clickedClass.indexOf("pswp__"+uiElement.name)>-1&&(uiElement.onTap(),found=!0);if(found){e.stopPropagation&&e.stopPropagation(),_blockControlsTap=!0;var tapDelay=framework.features.isOldAndroid?600:30;_blockControlsTapTimeout=setTimeout((function(){_blockControlsTap=!1}),tapDelay)}},_fitControlsInViewport=function(){return!pswp.likelyTouchDevice||_options.mouseUsed||screen.width>1200},_togglePswpClass=function(el,cName,add){framework[(add?"add":"remove")+"Class"](el,"pswp__"+cName)},_countNumItems=function(){var hasOneSlide=1===_options.getNumItemsFn();hasOneSlide!==_galleryHasOneSlide&&(_togglePswpClass(_controls,"ui--one-slide",hasOneSlide),_galleryHasOneSlide=hasOneSlide)},_toggleShareModalClass=function(){_togglePswpClass(_shareModal,"share-modal--hidden",_shareModalHidden)},_toggleShareModal=function(){return(_shareModalHidden=!_shareModalHidden)?(framework.removeClass(_shareModal,"pswp__share-modal--fade-in"),setTimeout((function(){_shareModalHidden&&_toggleShareModalClass()}),300)):(_toggleShareModalClass(),setTimeout((function(){_shareModalHidden||framework.addClass(_shareModal,"pswp__share-modal--fade-in")}),30)),_shareModalHidden||_updateShareURLs(),!1},_openWindowPopup=function(e){var target=(e=e||window.event).target||e.srcElement;return pswp.shout("shareLinkClick",e,target),!!target.href&&(!!target.hasAttribute("download")||(window.open(target.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),_shareModalHidden||_toggleShareModal(),!1))},_updateShareURLs=function(){for(var shareButtonOut="",shareButtonData,shareURL,image_url,page_url,share_text,i=0;i<_options.shareButtons.length;i++)shareButtonData=_options.shareButtons[i],image_url=_options.getImageURLForShare(shareButtonData),page_url=_options.getPageURLForShare(shareButtonData),share_text=_options.getTextForShare(shareButtonData),shareButtonOut+='<a href="'+(shareURL=shareButtonData.url.replace("{{url}}",encodeURIComponent(page_url)).replace("{{image_url}}",encodeURIComponent(image_url)).replace("{{raw_image_url}}",image_url).replace("{{text}}",encodeURIComponent(share_text)))+'" target="_blank" class="pswp__share--'+shareButtonData.id+'"'+(shareButtonData.download?"download":"")+">"+shareButtonData.label+"</a>",_options.parseShareButtonOut&&(shareButtonOut=_options.parseShareButtonOut(shareButtonData,shareButtonOut));_shareModal.children[0].innerHTML=shareButtonOut,_shareModal.children[0].onclick=_openWindowPopup},_hasCloseClass=function(target){for(var i=0;i<_options.closeElClasses.length;i++)if(framework.hasClass(target,"pswp__"+_options.closeElClasses[i]))return!0},_idleInterval,_idleTimer,_idleIncrement=0,_onIdleMouseMove=function(){clearTimeout(_idleTimer),_idleIncrement=0,_isIdle&&ui.setIdle(!1)},_onMouseLeaveWindow=function(e){var from=(e=e||window.event).relatedTarget||e.toElement;from&&"HTML"!==from.nodeName||(clearTimeout(_idleTimer),_idleTimer=setTimeout((function(){ui.setIdle(!0)}),_options.timeToIdleOutside))},_setupFullscreenAPI=function(){_options.fullscreenEl&&(_fullscrenAPI||(_fullscrenAPI=ui.getFullscreenAPI()),_fullscrenAPI?(framework.bind(document,_fullscrenAPI.eventK,ui.updateFullscreen),ui.updateFullscreen(),framework.addClass(pswp.template,"pswp--supports-fs")):framework.removeClass(pswp.template,"pswp--supports-fs"))},_setupLoadingIndicator=function(){_options.preloaderEl&&(_toggleLoadingIndicator(!0),_listen("beforeChange",(function(){clearTimeout(_loadingIndicatorTimeout),_loadingIndicatorTimeout=setTimeout((function(){pswp.currItem&&pswp.currItem.loading?(!pswp.allowProgressiveImg()||pswp.currItem.img&&!pswp.currItem.img.naturalWidth)&&_toggleLoadingIndicator(!1):_toggleLoadingIndicator(!0)}),_options.loadingIndicatorDelay)})),_listen("imageLoadComplete",(function(index,item){pswp.currItem===item&&_toggleLoadingIndicator(!0)})))},_toggleLoadingIndicator=function(hide){_loadingIndicatorHidden!==hide&&(_togglePswpClass(_loadingIndicator,"preloader--active",!hide),_loadingIndicatorHidden=hide)},_applyNavBarGaps=function(item){var gap=item.vGap;if(_fitControlsInViewport()){var bars=_options.barsSize;if(_options.captionEl&&"auto"===bars.bottom)if(_fakeCaptionContainer||((_fakeCaptionContainer=framework.createEl("pswp__caption pswp__caption--fake")).appendChild(framework.createEl("pswp__caption__center")),_controls.insertBefore(_fakeCaptionContainer,_captionContainer),framework.addClass(_controls,"pswp__ui--fit")),_options.addCaptionHTMLFn(item,_fakeCaptionContainer,!0)){var captionSize=_fakeCaptionContainer.clientHeight;gap.bottom=parseInt(captionSize,10)||44}else gap.bottom=bars.top;else gap.bottom="auto"===bars.bottom?0:bars.bottom;gap.top=bars.top}else gap.top=gap.bottom=0},_setupIdle=function(){_options.timeToIdle&&_listen("mouseUsed",(function(){framework.bind(document,"mousemove",_onIdleMouseMove),framework.bind(document,"mouseout",_onMouseLeaveWindow),_idleInterval=setInterval((function(){2===++_idleIncrement&&ui.setIdle(!0)}),_options.timeToIdle/2)}))},_setupHidingControlsDuringGestures=function(){var pinchControlsHidden;_listen("onVerticalDrag",(function(now){_controlsVisible&&now<.95?ui.hideControls():!_controlsVisible&&now>=.95&&ui.showControls()})),_listen("onPinchClose",(function(now){_controlsVisible&&now<.9?(ui.hideControls(),pinchControlsHidden=!0):pinchControlsHidden&&!_controlsVisible&&now>.9&&ui.showControls()})),_listen("zoomGestureEnded",(function(){(pinchControlsHidden=!1)&&!_controlsVisible&&ui.showControls()}))},_uiElements=[{name:"caption",option:"captionEl",onInit:function(el){_captionContainer=el}},{name:"share-modal",option:"shareEl",onInit:function(el){_shareModal=el},onTap:function(){_toggleShareModal()}},{name:"button--share",option:"shareEl",onInit:function(el){_shareButton=el},onTap:function(){_toggleShareModal()}},{name:"button--zoom",option:"zoomEl",onTap:pswp.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(el){_indexIndicator=el}},{name:"button--close",option:"closeEl",onTap:pswp.close},{name:"button--arrow--left",option:"arrowEl",onTap:pswp.prev},{name:"button--arrow--right",option:"arrowEl",onTap:pswp.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){_fullscrenAPI.isFullscreen()?_fullscrenAPI.exit():_fullscrenAPI.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(el){_loadingIndicator=el}}],_setupUIElements=function(){var item,classAttr,uiElement,loopThroughChildElements=function(sChildren){if(sChildren)for(var l=sChildren.length,i=0;i<l;i++){item=sChildren[i],classAttr=item.className;for(var a=0;a<_uiElements.length;a++)uiElement=_uiElements[a],classAttr.indexOf("pswp__"+uiElement.name)>-1&&(_options[uiElement.option]?(framework.removeClass(item,"pswp__element--disabled"),uiElement.onInit&&uiElement.onInit(item)):framework.addClass(item,"pswp__element--disabled"))}};loopThroughChildElements(_controls.children);var topBar=framework.getChildByClass(_controls,"pswp__top-bar");topBar&&loopThroughChildElements(topBar.children)};ui.init=function(){framework.extend(pswp.options,_defaultUIOptions,!0),_options=pswp.options,_controls=framework.getChildByClass(pswp.scrollWrap,"pswp__ui"),_listen=pswp.listen,_setupHidingControlsDuringGestures(),_listen("beforeChange",ui.update),_listen("doubleTap",(function(point){var initialZoomLevel=pswp.currItem.initialZoomLevel;pswp.getZoomLevel()!==initialZoomLevel?pswp.zoomTo(initialZoomLevel,point,333):pswp.zoomTo(_options.getDoubleTapZoom(!1,pswp.currItem),point,333)})),_listen("preventDragEvent",(function(e,isDown,preventObj){var t=e.target||e.srcElement;t&&t.className&&e.type.indexOf("mouse")>-1&&(t.className.indexOf("__caption")>0||/(SMALL|STRONG|EM)/i.test(t.tagName))&&(preventObj.prevent=!1)})),_listen("bindEvents",(function(){framework.bind(_controls,"pswpTap click",_onControlsTap),framework.bind(pswp.scrollWrap,"pswpTap",ui.onGlobalTap),pswp.likelyTouchDevice||framework.bind(pswp.scrollWrap,"mouseover",ui.onMouseOver)})),_listen("unbindEvents",(function(){_shareModalHidden||_toggleShareModal(),_idleInterval&&clearInterval(_idleInterval),framework.unbind(document,"mouseout",_onMouseLeaveWindow),framework.unbind(document,"mousemove",_onIdleMouseMove),framework.unbind(_controls,"pswpTap click",_onControlsTap),framework.unbind(pswp.scrollWrap,"pswpTap",ui.onGlobalTap),framework.unbind(pswp.scrollWrap,"mouseover",ui.onMouseOver),_fullscrenAPI&&(framework.unbind(document,_fullscrenAPI.eventK,ui.updateFullscreen),_fullscrenAPI.isFullscreen()&&(_options.hideAnimationDuration=0,_fullscrenAPI.exit()),_fullscrenAPI=null)})),_listen("destroy",(function(){_options.captionEl&&(_fakeCaptionContainer&&_controls.removeChild(_fakeCaptionContainer),framework.removeClass(_captionContainer,"pswp__caption--empty")),_shareModal&&(_shareModal.children[0].onclick=null),framework.removeClass(_controls,"pswp__ui--over-close"),framework.addClass(_controls,"pswp__ui--hidden"),ui.setIdle(!1)})),_options.showAnimationDuration||framework.removeClass(_controls,"pswp__ui--hidden"),_listen("initialZoomIn",(function(){_options.showAnimationDuration&&framework.removeClass(_controls,"pswp__ui--hidden")})),_listen("initialZoomOut",(function(){framework.addClass(_controls,"pswp__ui--hidden")})),_listen("parseVerticalMargin",_applyNavBarGaps),_setupUIElements(),_options.shareEl&&_shareButton&&_shareModal&&(_shareModalHidden=!0),_countNumItems(),_setupIdle(),_setupFullscreenAPI(),_setupLoadingIndicator()},ui.setIdle=function(isIdle){_isIdle=isIdle,_togglePswpClass(_controls,"ui--idle",isIdle)},ui.update=function(){_controlsVisible&&pswp.currItem?(ui.updateIndexIndicator(),_options.captionEl&&(_options.addCaptionHTMLFn(pswp.currItem,_captionContainer),_togglePswpClass(_captionContainer,"caption--empty",!pswp.currItem.title)),_overlayUIUpdated=!0):_overlayUIUpdated=!1,_shareModalHidden||_toggleShareModal(),_countNumItems()},ui.updateFullscreen=function(e){e&&setTimeout((function(){pswp.setScrollOffset(0,framework.getScrollY())}),50),framework[(_fullscrenAPI.isFullscreen()?"add":"remove")+"Class"](pswp.template,"pswp--fs")},ui.updateIndexIndicator=function(){"type023"==pswp.currItem.block_type?$(".pswp__download").css("display","none"):$(".pswp__download").css("display","inline"),$(".pswp__button .down-link").attr("href",pswp.currItem.down_url),_options.counterEl&&(_indexIndicator.innerHTML=pswp.getCurrentIndex()+1+_options.indexIndicatorSep+_options.getNumItemsFn())},ui.onGlobalTap=function(e){var target=(e=e||window.event).target||e.srcElement;if(!_blockControlsTap)if(e.detail&&"mouse"===e.detail.pointerType){if(_hasCloseClass(target))return void pswp.close();framework.hasClass(target,"pswp__img")&&(1===pswp.getZoomLevel()&&pswp.getZoomLevel()<=pswp.currItem.fitRatio?_options.clickToCloseNonZoomable&&pswp.close():pswp.toggleDesktopZoom(e.detail.releasePoint))}else if(_options.tapToToggleControls&&(_controlsVisible?ui.hideControls():ui.showControls()),_options.tapToClose&&(framework.hasClass(target,"pswp__img")||_hasCloseClass(target)))return void pswp.close()},ui.onMouseOver=function(e){var target=(e=e||window.event).target||e.srcElement;_togglePswpClass(_controls,"ui--over-close",_hasCloseClass(target))},ui.hideControls=function(){framework.addClass(_controls,"pswp__ui--hidden"),_controlsVisible=!1},ui.showControls=function(){_controlsVisible=!0,_overlayUIUpdated||ui.update(),framework.removeClass(_controls,"pswp__ui--hidden")},ui.supportsFullscreen=function(){var d=document;return!!(d.exitFullscreen||d.mozCancelFullScreen||d.webkitExitFullscreen||d.msExitFullscreen)},ui.getFullscreenAPI=function(){var dE=document.documentElement,api,tF="fullscreenchange";return dE.requestFullscreen?api={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:tF}:dE.mozRequestFullScreen?api={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+tF}:dE.webkitRequestFullscreen?api={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+tF}:dE.msRequestFullscreen&&(api={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),api&&(api.enter=function(){if(_initalCloseOnScrollValue=_options.closeOnScroll,_options.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK)return pswp.template[this.enterK]();pswp.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},api.exit=function(){return _options.closeOnScroll=_initalCloseOnScrollValue,document[this.exitK]()},api.isFullscreen=function(){return document[this.elementK]}),api}}}));