{"version":3,"sources":["lightgallery.js","lg-thumbnail.js","lg-fullscreen.js","lg-video.js"],"names":["$","window","document","undefined","defaults","mode","cssEasing","easing","speed","height","width","addClass","startClass","backdropDuration","hideBarsDelay","useLeft","closable","loop","escKey","keyPress","controls","slideEndAnimatoin","hideControlOnEnd","mousewheel","appendSubHtmlTo","preload","showAfterLoad","selector","nextHtml","prevHtml","index","iframeMaxWidth","download","counter","appendCounterTo","swipeThreshold","enableSwipe","enableDrag","dynamic","dynamicEl","galleryId","Plugin","element","options","this","el","$el","s","extend","modules","lGalleryOn","lgBusy","hideBartimeout","isTouch","documentElement","$items","find","children","$slide","$outer","init","prototype","_this","length","_hash","location","hash","indexOf","parseInt","split","hasClass","setTimeout","build","trigger","on","event","preventDefault","er","returnValue","structure","each","fn","lightGallery","key","slide","arrow","closeGallery","removeClass","clearTimeout","template","list","i","subHtmlCont","append","css","setTop","eq","doCss","$inner","wH","top","$lGallery","transition","root","style","support","isVideo","src","html","attr","html5","youtube","match","vimeo","dailymotion","addHtml","subHtml","fL","substring","j","loadContent","rec","delay","_$img","_src","_poster","_srcset","_sizes","_html","_hasPoster","getResponsiveSrc","srcItms","rsWidth","rsSrc","__src","splice","push","wWidth","poster","responsive","srcset","sizes","iframe","_isVideo","prepend","videoClass","picturefill","elements","e","console","error","_speed","fromTouch","fromThumb","_prevIndex","_length","_time","_next","_prev","arrowDisable","touchPrev","touchNext","fadeOut","fadeIn","downloadUrl","text","goToNextSlide","goToPrevSlide","keyCode","destroy","removeAttr","setTranslate","xValue","yValue","transform","touchMove","startCoords","endCoords","distance","touchEnd","not","Math","abs","isMoved","manageSwipeClass","originalEvent","targetTouches","pageX","isDraging","target","scrollLeft","deltaY","mousedown","is","d","off","removeData","remove","data","err","jQuery","thumbnail","animateThumb","currentPagerPosition","thumbWidth","thumbContHeight","thumbMargin","exThumbImage","showThumbByDefault","toogleThumb","pullCaptionUp","enableThumbDrag","enableThumbSwipe","loadYoutubeThumbnail","youtubeThumbSize","loadVimeoThumbnail","vimeoThumbSize","loadDailymotionThumbnail","Thumbnail","core","$thumbOuter","thumbOuterWidth","thumbTotalWidth","thumbIndex","left","thumbClickable","toogle","thumbkeyPress","$thumb","thumbList","vimeoErrorThumbSize","getThumb","thumb","thumbImg","vimeoId","position","$this","vimeoVideoId","getJSON","format","_$this","value","animate","tempLeft","toggleClass","fullScreen","Fullscreen","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","reuestFullscreen","requestFullscreen","msRequestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","exitFullscreen","msExitFullscreen","mozCancelFullScreen","webkitExitFullscreen","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","fullscreen","videoMaxWidth","youtubePlayerParams","vimeoPlayerParams","dailymotionPlayerParams","videojs","Video","videoLoaded","loadVideo","get","play","loadOnClick","youtubePlayer","vimeoPlayer","dailymotionPlayer","html5Player","contentWindow","postMessage","$f","api","_loadVideo","$tempImg","prevIndex","$videoSlide","pause","noposter","video","autoplay","a","param"],"mappings":"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","file":"ecom-details-view-plugins.min.js","sourcesContent":["/*! lightgallery - v1.2.4 - 2015-09-26\r\n* http://sachinchoolur.github.io/lightGallery/\r\n* Copyright (c) 2015 Sachin N; Licensed Apache 2.0 */\r\n(function($, window, document, undefined) {\r\n\r\n 'use strict';\r\n\r\n var defaults = {\r\n\r\n mode: 'lg-slide',\r\n\r\n // Ex : 'ease'\r\n cssEasing: 'cubic-bezier(0.25, 0, 0.25, 1)',\r\n\r\n //'for jquery animation'\r\n easing: 'linear',\r\n speed: 600,\r\n height: '100%',\r\n width: '100%',\r\n addClass: '',\r\n startClass: 'lg-start-zoom',\r\n backdropDuration: 150,\r\n hideBarsDelay: 6000,\r\n\r\n useLeft: false,\r\n\r\n closable: true,\r\n loop: true,\r\n escKey: true,\r\n keyPress: true,\r\n controls: true,\r\n slideEndAnimatoin: true,\r\n hideControlOnEnd: false,\r\n mousewheel: true,\r\n\r\n // .lg-item || '.lg-sub-html'\r\n appendSubHtmlTo: '.lg-sub-html',\r\n\r\n /**\r\n * @desc number of preload slides\r\n * will exicute only after the current slide is fully loaded.\r\n *\r\n * @ex you clicked on 4th image and if preload = 1 then 3rd slide and 5th\r\n * slide will be loaded in the background after the 4th slide is fully loaded..\r\n * if preload is 2 then 2nd 3rd 5th 6th slides will be preloaded.. ... ...\r\n *\r\n */\r\n preload: 1,\r\n showAfterLoad: true,\r\n selector: '',\r\n nextHtml: '',\r\n prevHtml: '',\r\n\r\n // 0, 1\r\n index: false,\r\n\r\n iframeMaxWidth: '100%',\r\n\r\n download: true,\r\n counter: true,\r\n appendCounterTo: '.lg-toolbar',\r\n\r\n swipeThreshold: 50,\r\n enableSwipe: true,\r\n enableDrag: true,\r\n\r\n dynamic: false,\r\n dynamicEl: [],\r\n galleryId: 1\r\n };\r\n\r\n function Plugin(element, options) {\r\n\r\n // Current lightGallery element\r\n this.el = element;\r\n\r\n // Current jquery element\r\n this.$el = $(element);\r\n\r\n // lightGallery settings\r\n this.s = $.extend({}, defaults, options);\r\n\r\n // lightGallery modules\r\n this.modules = {};\r\n\r\n // false when lightgallery complete first slide;\r\n this.lGalleryOn = false;\r\n\r\n this.lgBusy = false;\r\n\r\n // Timeout function for hiding controls;\r\n this.hideBartimeout = false;\r\n\r\n // To determine browser supports for touch events;\r\n this.isTouch = ('ontouchstart' in document.documentElement);\r\n\r\n // DIsable hideControlOnEnd if sildeEndAnimation is true\r\n if (this.s.slideEndAnimatoin) {\r\n this.s.hideControlOnEnd = false;\r\n }\r\n\r\n // Gallery items\r\n if (this.s.dynamic) {\r\n this.$items = this.s.dynamicEl;\r\n } else {\r\n if (this.s.selector === 'this') {\r\n this.$items = this.$el;\r\n } else if (this.s.selector !== '') {\r\n this.$items = this.$el.find($(this.s.selector));\r\n } else {\r\n this.$items = this.$el.children();\r\n }\r\n }\r\n\r\n // .lg-item\r\n this.$slide = '';\r\n\r\n // .lg-outer\r\n this.$outer = '';\r\n\r\n this.init();\r\n\r\n return this;\r\n }\r\n\r\n Plugin.prototype.init = function() {\r\n\r\n var _this = this;\r\n\r\n // s.preload should not be more than $item.length\r\n if (_this.s.preload > _this.$items.length) {\r\n _this.s.preload = _this.$items.length;\r\n }\r\n\r\n // if dynamic option is enabled execute immediately\r\n var _hash = window.location.hash;\r\n if (_hash.indexOf('lg=' + this.s.galleryId) > 0) {\r\n\r\n _this.index = parseInt(_hash.split('&slide=')[1], 10);\r\n\r\n $('body').addClass('lg-from-hash');\r\n if (!$('body').hasClass('lg-on')) {\r\n setTimeout(function() {\r\n _this.build(_this.index);\r\n $('body').addClass('lg-on');\r\n });\r\n }\r\n }\r\n\r\n if (_this.s.dynamic) {\r\n\r\n _this.$el.trigger('onBeforeOpen.lg');\r\n\r\n _this.index = _this.s.index || 0;\r\n\r\n // prevent accidental double execution\r\n if (!$('body').hasClass('lg-on')) {\r\n setTimeout(function() {\r\n _this.build(_this.index);\r\n $('body').addClass('lg-on');\r\n });\r\n }\r\n } else {\r\n\r\n // Using different namespace for click because click event should not unbind if selector is same object('this')\r\n _this.$items.on('click.lgcustom', function(event) {\r\n\r\n // For IE8\r\n try {\r\n event.preventDefault();\r\n event.preventDefault();\r\n } catch (er) {\r\n event.returnValue = false;\r\n }\r\n\r\n _this.$el.trigger('onBeforeOpen.lg');\r\n\r\n _this.index = _this.s.index || _this.$items.index(this);\r\n\r\n // prevent accidental double execution\r\n if (!$('body').hasClass('lg-on')) {\r\n _this.build(_this.index);\r\n $('body').addClass('lg-on');\r\n }\r\n });\r\n }\r\n\r\n };\r\n\r\n Plugin.prototype.build = function(index) {\r\n\r\n var _this = this;\r\n\r\n _this.structure();\r\n\r\n // module constructor\r\n $.each($.fn.lightGallery.modules, function(key) {\r\n _this.modules[key] = new $.fn.lightGallery.modules[key](_this.el);\r\n });\r\n\r\n // initiate slide function\r\n _this.slide(index, false, false);\r\n\r\n if (_this.s.keyPress) {\r\n _this.keyPress();\r\n }\r\n\r\n if (_this.$items.length > 1) {\r\n\r\n _this.arrow();\r\n\r\n setTimeout(function() {\r\n _this.enableDrag();\r\n _this.enableSwipe();\r\n }, 50);\r\n\r\n if (_this.s.mousewheel) {\r\n _this.mousewheel();\r\n }\r\n }\r\n\r\n _this.counter();\r\n\r\n _this.closeGallery();\r\n\r\n _this.$el.trigger('onAfterOpen.lg');\r\n\r\n // Hide controllers if mouse doesn't move for some period\r\n _this.$outer.on('mousemove.lg click.lg touchstart.lg', function() {\r\n\r\n _this.$outer.removeClass('lg-hide-items');\r\n\r\n clearTimeout(_this.hideBartimeout);\r\n\r\n // Timeout will be cleared on each slide movement also\r\n _this.hideBartimeout = setTimeout(function() {\r\n _this.$outer.addClass('lg-hide-items');\r\n }, _this.s.hideBarsDelay);\r\n\r\n });\r\n\r\n };\r\n\r\n Plugin.prototype.structure = function() {\r\n var list = '';\r\n var controls = '';\r\n var i = 0;\r\n var subHtmlCont = '';\r\n var template;\r\n var _this = this;\r\n\r\n $('body').append('
');\r\n $('.lg-backdrop').css('transition-duration', this.s.backdropDuration + 'ms');\r\n\r\n // Create gallery items\r\n for (i = 0; i < this.$items.length; i++) {\r\n list += '
';\r\n }\r\n\r\n // Create controlls\r\n if (this.s.controls && this.$items.length > 1) {\r\n controls = '
' +\r\n '
' + this.s.prevHtml + '
' +\r\n '
' + this.s.nextHtml + '
' +\r\n '
';\r\n }\r\n\r\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\r\n subHtmlCont = '
';\r\n }\r\n\r\n template = '
' +\r\n '
' +\r\n '
' + list + '
' +\r\n '
' +\r\n '' +\r\n '
' +\r\n controls +\r\n subHtmlCont +\r\n '
' +\r\n '
';\r\n\r\n $('body').append(template);\r\n this.$outer = $('.lg-outer');\r\n this.$slide = this.$outer.find('.lg-item');\r\n\r\n if (this.s.useLeft) {\r\n this.$outer.addClass('lg-use-left');\r\n } else {\r\n this.$outer.addClass('lg-use-css3');\r\n }\r\n\r\n // For fixed height gallery\r\n _this.setTop();\r\n $(window).on('resize.lg orientationchange.lg', function() {\r\n setTimeout(function() {\r\n _this.setTop();\r\n }, 100);\r\n });\r\n\r\n // add class lg-current to remove initial transition\r\n this.$slide.eq(this.index).addClass('lg-current');\r\n\r\n // add Class for css support and transition mode\r\n if (this.doCss()) {\r\n this.$outer.addClass('lg-css3');\r\n } else {\r\n this.$outer.addClass('lg-css');\r\n }\r\n\r\n this.$outer.addClass(this.s.mode);\r\n\r\n if (this.s.enableDrag && this.$items.length > 1) {\r\n this.$outer.addClass('lg-grab');\r\n }\r\n\r\n if (this.s.showAfterLoad) {\r\n this.$outer.addClass('lg-show-after-load');\r\n }\r\n\r\n if (this.doCss()) {\r\n var $inner = this.$outer.find('.lg-inner');\r\n $inner.css('transition-timing-function', this.s.cssEasing);\r\n $inner.css('transition-duration', this.s.speed + 'ms');\r\n }\r\n\r\n $('.lg-backdrop').addClass('in');\r\n\r\n setTimeout(function() {\r\n _this.$outer.addClass('lg-visible');\r\n }, this.s.backdropDuration);\r\n\r\n if (this.s.download) {\r\n this.$outer.find('.lg-toolbar').append('');\r\n }\r\n\r\n };\r\n\r\n // For fixed height gallery\r\n Plugin.prototype.setTop = function() {\r\n if (this.s.height !== '100%') {\r\n var wH = $(window).height();\r\n var top = (wH - parseInt(this.s.height, 10)) / 2;\r\n var $lGallery = this.$outer.find('.lg');\r\n if (wH >= parseInt(this.s.height, 10)) {\r\n $lGallery.css('top', top + 'px');\r\n } else {\r\n $lGallery.css('top', '0px');\r\n }\r\n }\r\n };\r\n\r\n // Find css3 support\r\n Plugin.prototype.doCss = function() {\r\n // check for css animation support\r\n var support = function() {\r\n var transition = ['transition', 'MozTransition', 'WebkitTransition', 'OTransition', 'msTransition', 'KhtmlTransition'];\r\n var root = document.documentElement;\r\n var i = 0;\r\n for (i = 0; i < transition.length; i++) {\r\n if (transition[i] in root.style) {\r\n return true;\r\n }\r\n }\r\n };\r\n\r\n if (support()) {\r\n return true;\r\n }\r\n\r\n return false;\r\n };\r\n\r\n /**\r\n * @desc Check the given src is video\r\n * @param {String} src\r\n * @return {Object} video type\r\n * Ex:{ youtube : [\"//www.youtube.com/watch?v=c0asJgSyxcY\", \"c0asJgSyxcY\"] }\r\n */\r\n Plugin.prototype.isVideo = function(src, index) {\r\n\r\n var html;\r\n if (this.s.dynamic) {\r\n html = this.s.dynamicEl[index].html;\r\n } else {\r\n html = this.$items.eq(index).attr('data-html');\r\n }\r\n\r\n if (!src && html) {\r\n return {\r\n html5: true\r\n };\r\n }\r\n\r\n var youtube = src.match(/\\/\\/(?:www\\.)?youtu(?:\\.be|be\\.com)\\/(?:watch\\?v=|embed\\/)?([a-z0-9\\-\\_\\%]+)/i);\r\n var vimeo = src.match(/\\/\\/(?:www\\.)?vimeo.com\\/([0-9a-z\\-_]+)/i);\r\n var dailymotion = src.match(/\\/\\/(?:www\\.)?dai.ly\\/([0-9a-z\\-_]+)/i);\r\n\r\n if (youtube) {\r\n return {\r\n youtube: youtube\r\n };\r\n } else if (vimeo) {\r\n return {\r\n vimeo: vimeo\r\n };\r\n } else if (dailymotion) {\r\n return {\r\n dailymotion: dailymotion\r\n };\r\n }\r\n };\r\n\r\n /**\r\n * @desc Create image counter\r\n * Ex: 1/10\r\n */\r\n Plugin.prototype.counter = function() {\r\n if (this.s.counter) {\r\n $(this.s.appendCounterTo).append('
' + (parseInt(this.index, 10) + 1) + ' / ' + this.$items.length + '
');\r\n }\r\n };\r\n\r\n /**\r\n * @desc add sub-html into the slide\r\n * @param {Number} index - index of the slide\r\n */\r\n Plugin.prototype.addHtml = function(index) {\r\n var subHtml = null;\r\n if (this.s.dynamic) {\r\n subHtml = this.s.dynamicEl[index].subHtml;\r\n } else {\r\n subHtml = this.$items.eq(index).attr('data-sub-html');\r\n }\r\n\r\n if (typeof subHtml !== 'undefined' && subHtml !== null) {\r\n\r\n // get first letter of subhtml\r\n // if first letter starts with . or # get the html form the jQuery object\r\n var fL = subHtml.substring(0, 1);\r\n if (fL === '.' || fL === '#') {\r\n subHtml = $(subHtml).html();\r\n } else {\r\n subHtml = subHtml;\r\n }\r\n } else {\r\n subHtml = '';\r\n }\r\n\r\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\r\n this.$outer.find(this.s.appendSubHtmlTo).html(subHtml);\r\n\r\n // Add lg-empty-html class if title doesn't exist\r\n if (subHtml === '') {\r\n this.$outer.find(this.s.appendSubHtmlTo).addClass('lg-empty-html');\r\n } else {\r\n this.$outer.find(this.s.appendSubHtmlTo).removeClass('lg-empty-html');\r\n }\r\n } else {\r\n this.$slide.eq(index).append(subHtml);\r\n }\r\n\r\n this.$el.trigger('onAfterAppendSubHtml.lg', [index]);\r\n };\r\n\r\n /**\r\n * @desc Preload slides\r\n * @param {Number} index - index of the slide\r\n */\r\n Plugin.prototype.preload = function(index) {\r\n var i = 1;\r\n var j = 1;\r\n for (i = 1; i <= this.s.preload; i++) {\r\n if (i >= this.$items.length - index) {\r\n break;\r\n }\r\n\r\n this.loadContent(index + i, false, 0);\r\n }\r\n\r\n for (j = 1; j <= this.s.preload; j++) {\r\n if (index - j < 0) {\r\n break;\r\n }\r\n\r\n this.loadContent(index - j, false, 0);\r\n }\r\n };\r\n\r\n /**\r\n * @desc Load slide content into slide.\r\n * @param {Number} index - index of the slide.\r\n * @param {Boolean} rec - if true call loadcontent() function again.\r\n * @param {Boolean} delay - delay for adding complete class. it is 0 except first time.\r\n */\r\n Plugin.prototype.loadContent = function(index, rec, delay) {\r\n\r\n var _this = this;\r\n var _hasPoster = false;\r\n var _$img;\r\n var _src;\r\n var _poster;\r\n var _srcset;\r\n var _sizes;\r\n var _html;\r\n var getResponsiveSrc = function(srcItms) {\r\n var rsWidth = [];\r\n var rsSrc = [];\r\n for (var i = 0; i < srcItms.length; i++) {\r\n var __src = srcItms[i].split(' ');\r\n\r\n // Manage empty space\r\n if (__src[0] === '') {\r\n __src.splice(0, 1);\r\n }\r\n\r\n rsSrc.push(__src[0]);\r\n rsWidth.push(__src[1]);\r\n }\r\n\r\n var wWidth = $(window).width();\r\n for (var j = 0; j < rsWidth.length; j++) {\r\n if (parseInt(rsWidth[j], 10) > wWidth) {\r\n _src = rsSrc[j];\r\n break;\r\n }\r\n }\r\n };\r\n\r\n if (_this.s.dynamic) {\r\n\r\n if (_this.s.dynamicEl[index].poster) {\r\n _hasPoster = true;\r\n _poster = _this.s.dynamicEl[index].poster;\r\n }\r\n\r\n _html = _this.s.dynamicEl[index].html;\r\n _src = _this.s.dynamicEl[index].src;\r\n\r\n if (_this.s.dynamicEl[index].responsive) {\r\n var srcDyItms = _this.s.dynamicEl[index].responsive.split(',');\r\n getResponsiveSrc(srcDyItms);\r\n }\r\n\r\n _srcset = _this.s.dynamicEl[index].srcset;\r\n _sizes = _this.s.dynamicEl[index].sizes;\r\n\r\n } else {\r\n\r\n if (_this.$items.eq(index).attr('data-poster')) {\r\n _hasPoster = true;\r\n _poster = _this.$items.eq(index).attr('data-poster');\r\n }\r\n\r\n _html = _this.$items.eq(index).attr('data-html');\r\n _src = _this.$items.eq(index).attr('href') || _this.$items.eq(index).attr('data-src');\r\n\r\n if (_this.$items.eq(index).attr('data-responsive')) {\r\n var srcItms = _this.$items.eq(index).attr('data-responsive').split(',');\r\n getResponsiveSrc(srcItms);\r\n }\r\n\r\n _srcset = _this.$items.eq(index).attr('data-srcset');\r\n _sizes = _this.$items.eq(index).attr('data-sizes');\r\n\r\n }\r\n\r\n //if (_src || _srcset || _sizes || _poster) {\r\n\r\n var iframe = false;\r\n if (_this.s.dynamic) {\r\n if (_this.s.dynamicEl[index].iframe) {\r\n iframe = true;\r\n }\r\n } else {\r\n if (_this.$items.eq(index).attr('data-iframe') === 'true') {\r\n iframe = true;\r\n }\r\n }\r\n\r\n var _isVideo = _this.isVideo(_src, index);\r\n if (!_this.$slide.eq(index).hasClass('lg-loaded')) {\r\n if (iframe) {\r\n _this.$slide.eq(index).prepend('
');\r\n } else if (_hasPoster) {\r\n var videoClass = '';\r\n if (_isVideo && _isVideo.youtube) {\r\n videoClass = 'lg-has-youtube';\r\n } else if (_isVideo && _isVideo.vimeo) {\r\n videoClass = 'lg-has-vimeo';\r\n } else {\r\n videoClass = 'lg-has-html5';\r\n }\r\n\r\n _this.$slide.eq(index).prepend('
');\r\n\r\n } else if (_isVideo) {\r\n _this.$slide.eq(index).prepend('
');\r\n _this.$el.trigger('hasVideo.lg', [index, _src, _html]);\r\n } else {\r\n _this.$slide.eq(index).prepend('
');\r\n }\r\n\r\n _this.$el.trigger('onAferAppendSlide.lg', [index]);\r\n\r\n _$img = _this.$slide.eq(index).find('.lg-object');\r\n if (_sizes) {\r\n _$img.attr('sizes', _sizes);\r\n }\r\n\r\n if (_srcset) {\r\n _$img.attr('srcset', _srcset);\r\n try {\r\n picturefill({\r\n elements: [_$img[0]]\r\n });\r\n } catch (e) {\r\n console.error('Make sure you have included Picturefill version 2');\r\n }\r\n }\r\n\r\n if (this.s.appendSubHtmlTo !== '.lg-sub-html') {\r\n _this.addHtml(index);\r\n }\r\n\r\n _this.$slide.eq(index).addClass('lg-loaded');\r\n }\r\n\r\n _this.$slide.eq(index).find('.lg-object').on('load.lg error.lg', function() {\r\n\r\n // For first time add some delay for displaying the start animation.\r\n var _speed = 0;\r\n\r\n // Do not change the delay value because it is required for zoom plugin.\r\n // If gallery opened from direct url (hash) speed value should be 0\r\n if (delay && !$('body').hasClass('lg-from-hash')) {\r\n _speed = delay;\r\n }\r\n\r\n setTimeout(function() {\r\n _this.$slide.eq(index).addClass('lg-complete');\r\n _this.$el.trigger('onSlideItemLoad.lg', [index, delay || 0]);\r\n }, _speed);\r\n\r\n });\r\n\r\n // @todo check load state for html5 videos\r\n if (_isVideo && _isVideo.html5 && !_hasPoster) {\r\n _this.$slide.eq(index).addClass('lg-complete');\r\n }\r\n\r\n if (rec === true) {\r\n if (!_this.$slide.eq(index).hasClass('lg-complete')) {\r\n _this.$slide.eq(index).find('.lg-object').on('load.lg error.lg', function() {\r\n _this.preload(index);\r\n });\r\n } else {\r\n _this.preload(index);\r\n }\r\n }\r\n\r\n //}\r\n };\r\n\r\n /**\r\n * @desc slide function for lightgallery\r\n ** Slide() gets call on start\r\n ** ** Set lg.on true once slide() function gets called.\r\n ** Call loadContent() on slide() function inside setTimeout\r\n ** ** On first slide we do not want any animation like slide of fade\r\n ** ** So on first slide( if lg.on if false that is first slide) loadContent() should start loading immediately\r\n ** ** Else loadContent() should wait for the transition to complete.\r\n ** ** So set timeout s.speed + 50\r\n <=> ** loadContent() will load slide content in to the particular slide\r\n ** ** It has recursion (rec) parameter. if rec === true loadContent() will call preload() function.\r\n ** ** preload will execute only when the previous slide is fully loaded (images iframe)\r\n ** ** avoid simultaneous image load\r\n <=> ** Preload() will check for s.preload value and call loadContent() again accoring to preload value\r\n ** loadContent() <====> Preload();\r\n\r\n * @param {Number} index - index of the slide\r\n * @param {Boolean} fromTouch - true if slide function called via touch event or mouse drag\r\n * @param {Boolean} fromThumb - true if slide function called via thumbnail click\r\n */\r\n Plugin.prototype.slide = function(index, fromTouch, fromThumb) {\r\n\r\n var _prevIndex = this.$outer.find('.lg-current').index();\r\n var _this = this;\r\n\r\n // Prevent if multiple call\r\n // Required for hsh plugin\r\n if (_this.lGalleryOn && (_prevIndex === index)) {\r\n return;\r\n }\r\n\r\n var _length = this.$slide.length;\r\n var _time = _this.lGalleryOn ? this.s.speed : 0;\r\n var _next = false;\r\n var _prev = false;\r\n\r\n if (!_this.lgBusy) {\r\n\r\n this.$el.trigger('onBeforeSlide.lg', [_prevIndex, index, fromTouch, fromThumb]);\r\n\r\n _this.lgBusy = true;\r\n\r\n clearTimeout(_this.hideBartimeout);\r\n\r\n // Add title if this.s.appendSubHtmlTo === lg-sub-html\r\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\r\n\r\n // wait for slide animation to complete\r\n setTimeout(function() {\r\n _this.addHtml(index);\r\n }, _time);\r\n }\r\n\r\n this.arrowDisable(index);\r\n\r\n if (!fromTouch) {\r\n\r\n // remove all transitions\r\n _this.$outer.addClass('lg-no-trans');\r\n\r\n this.$slide.removeClass('lg-prev-slide lg-next-slide');\r\n\r\n if (index < _prevIndex) {\r\n _prev = true;\r\n if ((index === 0) && (_prevIndex === _length - 1) && !fromThumb) {\r\n _prev = false;\r\n _next = true;\r\n }\r\n } else if (index > _prevIndex) {\r\n _next = true;\r\n if ((index === _length - 1) && (_prevIndex === 0) && !fromThumb) {\r\n _prev = true;\r\n _next = false;\r\n }\r\n }\r\n\r\n if (_prev) {\r\n\r\n //prevslide\r\n this.$slide.eq(index).addClass('lg-prev-slide');\r\n this.$slide.eq(_prevIndex).addClass('lg-next-slide');\r\n } else if (_next) {\r\n\r\n // next slide\r\n this.$slide.eq(index).addClass('lg-next-slide');\r\n this.$slide.eq(_prevIndex).addClass('lg-prev-slide');\r\n }\r\n\r\n // give 50 ms for browser to add/remove class\r\n setTimeout(function() {\r\n _this.$slide.removeClass('lg-current');\r\n\r\n //_this.$slide.eq(_prevIndex).removeClass('lg-current');\r\n _this.$slide.eq(index).addClass('lg-current');\r\n\r\n // reset all transitions\r\n _this.$outer.removeClass('lg-no-trans');\r\n }, 50);\r\n } else {\r\n\r\n var touchPrev = index - 1;\r\n var touchNext = index + 1;\r\n\r\n if ((index === 0) && (_prevIndex === _length - 1)) {\r\n\r\n // next slide\r\n touchNext = 0;\r\n touchPrev = _length - 1;\r\n } else if ((index === _length - 1) && (_prevIndex === 0)) {\r\n\r\n // prev slide\r\n touchNext = 0;\r\n touchPrev = _length - 1;\r\n }\r\n\r\n this.$slide.removeClass('lg-prev-slide lg-current lg-next-slide');\r\n _this.$slide.eq(touchPrev).addClass('lg-prev-slide');\r\n _this.$slide.eq(touchNext).addClass('lg-next-slide');\r\n _this.$slide.eq(index).addClass('lg-current');\r\n }\r\n\r\n if (_this.lGalleryOn) {\r\n setTimeout(function() {\r\n _this.loadContent(index, true, 0);\r\n }, this.s.speed + 50);\r\n\r\n setTimeout(function() {\r\n _this.lgBusy = false;\r\n _this.$el.trigger('onAfterSlide.lg', [_prevIndex, index, fromTouch, fromThumb]);\r\n }, this.s.speed);\r\n\r\n // Support non css3 browser\r\n if (!_this.doCss()) {\r\n _this.$slide.fadeOut(_this.s.speed);\r\n _this.$slide.eq(index).fadeIn(_this.s.speed);\r\n }\r\n } else {\r\n _this.loadContent(index, true, _this.s.backdropDuration);\r\n\r\n _this.lgBusy = false;\r\n _this.$el.trigger('onAfterSlide.lg', [_prevIndex, index, fromTouch, fromThumb]);\r\n\r\n // Support non css3 browser\r\n if (!_this.doCss()) {\r\n _this.$slide.fadeOut(50);\r\n _this.$slide.eq(index).fadeIn(50);\r\n }\r\n }\r\n\r\n if (this.s.download) {\r\n var _src;\r\n if (_this.s.dynamic) {\r\n _src = _this.s.dynamicEl[index].downloadUrl || _this.s.dynamicEl[index].src;\r\n } else {\r\n _src = _this.$items.eq(index).attr('data-download-url') || _this.$items.eq(index).attr('href') || _this.$items.eq(index).attr('data-src');\r\n\r\n }\r\n\r\n $('#lg-download').attr('href', _src);\r\n }\r\n\r\n _this.lGalleryOn = true;\r\n\r\n if (this.s.counter) {\r\n $('#lg-counter-current').text(index + 1);\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n /**\r\n * @desc Go to next slide\r\n * @param {Boolean} fromTouch - true if slide function called via touch event\r\n */\r\n Plugin.prototype.goToNextSlide = function(fromTouch) {\r\n var _this = this;\r\n if (!_this.lgBusy) {\r\n if ((_this.index + 1) < _this.$slide.length) {\r\n _this.index++;\r\n _this.$el.trigger('onBeforeNextSlide.lg', [_this.index]);\r\n _this.slide(_this.index, fromTouch, false);\r\n } else {\r\n if (_this.s.loop) {\r\n _this.index = 0;\r\n _this.$el.trigger('onBeforeNextSlide.lg', [_this.index]);\r\n _this.slide(_this.index, fromTouch, false);\r\n } else if (_this.s.slideEndAnimatoin) {\r\n _this.$outer.addClass('lg-right-end');\r\n setTimeout(function() {\r\n _this.$outer.removeClass('lg-right-end');\r\n }, 400);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @desc Go to previous slide\r\n * @param {Boolean} fromTouch - true if slide function called via touch event\r\n */\r\n Plugin.prototype.goToPrevSlide = function(fromTouch) {\r\n var _this = this;\r\n if (!_this.lgBusy) {\r\n if (_this.index > 0) {\r\n _this.index--;\r\n _this.$el.trigger('onBeforePrevSlide.lg', [_this.index, fromTouch]);\r\n _this.slide(_this.index, fromTouch, false);\r\n } else {\r\n if (_this.s.loop) {\r\n _this.index = _this.$items.length - 1;\r\n _this.$el.trigger('onBeforePrevSlide.lg', [_this.index, fromTouch]);\r\n _this.slide(_this.index, fromTouch, false);\r\n } else if (_this.s.slideEndAnimatoin) {\r\n _this.$outer.addClass('lg-left-end');\r\n setTimeout(function() {\r\n _this.$outer.removeClass('lg-left-end');\r\n }, 400);\r\n }\r\n }\r\n }\r\n };\r\n\r\n Plugin.prototype.keyPress = function() {\r\n var _this = this;\r\n if (this.$items.length > 1) {\r\n $(window).on('keyup.lg', function(e) {\r\n if (_this.$items.length > 1) {\r\n if (e.keyCode === 37) {\r\n e.preventDefault();\r\n _this.goToPrevSlide();\r\n }\r\n\r\n if (e.keyCode === 39) {\r\n e.preventDefault();\r\n _this.goToNextSlide();\r\n }\r\n }\r\n });\r\n }\r\n\r\n $(window).on('keydown.lg', function(e) {\r\n if (_this.s.escKey === true && e.keyCode === 27) {\r\n e.preventDefault();\r\n if (!_this.$outer.hasClass('lg-thumb-open')) {\r\n _this.destroy();\r\n } else {\r\n _this.$outer.removeClass('lg-thumb-open');\r\n }\r\n }\r\n });\r\n };\r\n\r\n Plugin.prototype.arrow = function() {\r\n var _this = this;\r\n this.$outer.find('.lg-prev').on('click.lg', function() {\r\n _this.goToPrevSlide();\r\n });\r\n\r\n this.$outer.find('.lg-next').on('click.lg', function() {\r\n _this.goToNextSlide();\r\n });\r\n };\r\n\r\n Plugin.prototype.arrowDisable = function(index) {\r\n\r\n // Disable arrows if s.hideControlOnEnd is true\r\n if (!this.s.loop && this.s.hideControlOnEnd) {\r\n if ((index + 1) < this.$slide.length) {\r\n this.$outer.find('.lg-next').removeAttr('disabled').removeClass('disabled');\r\n } else {\r\n this.$outer.find('.lg-next').attr('disabled', 'disabled').addClass('disabled');\r\n }\r\n\r\n if (index > 0) {\r\n this.$outer.find('.lg-prev').removeAttr('disabled').removeClass('disabled');\r\n } else {\r\n this.$outer.find('.lg-prev').attr('disabled', 'disabled').addClass('disabled');\r\n }\r\n }\r\n };\r\n\r\n Plugin.prototype.setTranslate = function($el, xValue, yValue) {\r\n // jQuery supports Automatic CSS prefixing since jQuery 1.8.0\r\n if (this.s.useLeft) {\r\n $el.css('left', xValue);\r\n } else {\r\n $el.css({\r\n transform: 'translate3d(' + (xValue) + 'px, ' + yValue + 'px, 0px)'\r\n });\r\n }\r\n };\r\n\r\n Plugin.prototype.touchMove = function(startCoords, endCoords) {\r\n\r\n var distance = endCoords - startCoords;\r\n\r\n // reset opacity and transition duration\r\n this.$outer.addClass('lg-dragging');\r\n\r\n // move current slide\r\n this.setTranslate(this.$slide.eq(this.index), distance, 0);\r\n\r\n // move next and prev slide with current slide\r\n this.setTranslate($('.lg-prev-slide'), -this.$slide.eq(this.index).width() + distance, 0);\r\n this.setTranslate($('.lg-next-slide'), this.$slide.eq(this.index).width() + distance, 0);\r\n };\r\n\r\n Plugin.prototype.touchEnd = function(distance) {\r\n var _this = this;\r\n\r\n // keep slide animation for any mode while dragg/swipe\r\n if (_this.s.mode !== 'lg-slide') {\r\n _this.$outer.addClass('lg-slide');\r\n }\r\n\r\n this.$slide.not('.lg-current, .lg-prev-slide, .lg-next-slide').css('opacity', '0');\r\n\r\n // set transition duration\r\n setTimeout(function() {\r\n _this.$outer.removeClass('lg-dragging');\r\n if ((distance < 0) && (Math.abs(distance) > _this.s.swipeThreshold)) {\r\n _this.goToNextSlide(true);\r\n } else if ((distance > 0) && (Math.abs(distance) > _this.s.swipeThreshold)) {\r\n _this.goToPrevSlide(true);\r\n } else if (Math.abs(distance) < 5) {\r\n\r\n // Trigger click if distance is less than 5 pix\r\n _this.$el.trigger('onSlideClick.lg');\r\n }\r\n\r\n _this.$slide.removeAttr('style');\r\n });\r\n\r\n // remove slide class once drag/swipe is completed if mode is not slide\r\n setTimeout(function() {\r\n if (!_this.$outer.hasClass('lg-dragging') && _this.s.mode !== 'lg-slide') {\r\n _this.$outer.removeClass('lg-slide');\r\n }\r\n }, _this.s.speed + 100);\r\n\r\n };\r\n\r\n Plugin.prototype.enableSwipe = function() {\r\n var _this = this;\r\n var startCoords = 0;\r\n var endCoords = 0;\r\n var isMoved = false;\r\n\r\n if (_this.s.enableSwipe && _this.isTouch && _this.doCss()) {\r\n\r\n _this.$slide.on('touchstart.lg', function(e) {\r\n if (!_this.$outer.hasClass('lg-zoomed') && !_this.lgBusy) {\r\n e.preventDefault();\r\n _this.manageSwipeClass();\r\n startCoords = e.originalEvent.targetTouches[0].pageX;\r\n }\r\n });\r\n\r\n _this.$slide.on('touchmove.lg', function(e) {\r\n if (!_this.$outer.hasClass('lg-zoomed')) {\r\n e.preventDefault();\r\n endCoords = e.originalEvent.targetTouches[0].pageX;\r\n _this.touchMove(startCoords, endCoords);\r\n isMoved = true;\r\n }\r\n });\r\n\r\n _this.$slide.on('touchend.lg', function() {\r\n if (!_this.$outer.hasClass('lg-zoomed')) {\r\n if (isMoved) {\r\n isMoved = false;\r\n _this.touchEnd(endCoords - startCoords);\r\n } else {\r\n _this.$el.trigger('onSlideClick.lg');\r\n }\r\n }\r\n });\r\n }\r\n\r\n };\r\n\r\n Plugin.prototype.enableDrag = function() {\r\n var _this = this;\r\n var startCoords = 0;\r\n var endCoords = 0;\r\n var isDraging = false;\r\n var isMoved = false;\r\n if (_this.s.enableDrag && !_this.isTouch && _this.doCss()) {\r\n _this.$slide.on('mousedown.lg', function(e) {\r\n // execute only on .lg-object\r\n if (!_this.$outer.hasClass('lg-zoomed')) {\r\n if ($(e.target).hasClass('lg-object') || $(e.target).hasClass('lg-video-play')) {\r\n e.preventDefault();\r\n\r\n if (!_this.lgBusy) {\r\n _this.manageSwipeClass();\r\n startCoords = e.pageX;\r\n isDraging = true;\r\n\r\n // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723\r\n _this.$outer.scrollLeft += 1;\r\n _this.$outer.scrollLeft -= 1;\r\n\r\n // *\r\n\r\n _this.$outer.removeClass('lg-grab').addClass('lg-grabbing');\r\n\r\n _this.$el.trigger('onDragstart.lg');\r\n }\r\n\r\n }\r\n }\r\n });\r\n\r\n $(window).on('mousemove.lg', function(e) {\r\n if (isDraging) {\r\n isMoved = true;\r\n endCoords = e.pageX;\r\n _this.touchMove(startCoords, endCoords);\r\n _this.$el.trigger('onDragmove.lg');\r\n }\r\n });\r\n\r\n $(window).on('mouseup.lg', function(e) {\r\n if (isMoved) {\r\n isMoved = false;\r\n _this.touchEnd(endCoords - startCoords);\r\n _this.$el.trigger('onDragend.lg');\r\n } else if ($(e.target).hasClass('lg-object') || $(e.target).hasClass('lg-video-play')) {\r\n _this.$el.trigger('onSlideClick.lg');\r\n }\r\n\r\n // Prevent execution on click\r\n if (isDraging) {\r\n isDraging = false;\r\n _this.$outer.removeClass('lg-grabbing').addClass('lg-grab');\r\n }\r\n });\r\n\r\n }\r\n };\r\n\r\n Plugin.prototype.manageSwipeClass = function() {\r\n var touchNext = this.index + 1;\r\n var touchPrev = this.index - 1;\r\n var length = this.$slide.length;\r\n if (this.s.loop) {\r\n if (this.index === 0) {\r\n touchPrev = length - 1;\r\n } else if (this.index === length - 1) {\r\n touchNext = 0;\r\n }\r\n }\r\n\r\n this.$slide.removeClass('lg-next-slide lg-prev-slide');\r\n if (touchPrev > -1) {\r\n this.$slide.eq(touchPrev).addClass('lg-prev-slide');\r\n }\r\n\r\n this.$slide.eq(touchNext).addClass('lg-next-slide');\r\n };\r\n\r\n Plugin.prototype.mousewheel = function() {\r\n var _this = this;\r\n _this.$outer.on('mousewheel.lg', function(e) {\r\n if (e.deltaY > 0) {\r\n _this.goToPrevSlide();\r\n } else {\r\n _this.goToNextSlide();\r\n }\r\n\r\n e.preventDefault();\r\n });\r\n\r\n };\r\n\r\n Plugin.prototype.closeGallery = function() {\r\n\r\n var _this = this;\r\n var mousedown = false;\r\n this.$outer.find('.lg-close').on('click.lg', function() {\r\n _this.destroy();\r\n });\r\n\r\n if (_this.s.closable) {\r\n\r\n // If you drag the slide and release outside gallery gets close on chrome\r\n // for preventing this check mousedown and mouseup happened on .lg-item or lg-outer\r\n _this.$outer.on('mousedown.lg', function(e) {\r\n\r\n if ($(e.target).is('.lg-outer') || $(e.target).is('.lg-item ') || $(e.target).is('.lg-img-wrap')) {\r\n mousedown = true;\r\n } else {\r\n mousedown = false;\r\n }\r\n\r\n });\r\n\r\n _this.$outer.on('mouseup.lg', function(e) {\r\n\r\n if ($(e.target).is('.lg-outer') || $(e.target).is('.lg-item ') || $(e.target).is('.lg-img-wrap') && mousedown) {\r\n if (!_this.$outer.hasClass('lg-dragging')) {\r\n _this.destroy();\r\n }\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n };\r\n\r\n Plugin.prototype.destroy = function(d) {\r\n\r\n var _this = this;\r\n\r\n _this.$el.trigger('onBeforeClose.lg');\r\n\r\n /**\r\n * if d is false or undefined destroy will only close the gallery\r\n * plugins instance remains with the element\r\n\r\n * if d is true destroy will completely remove the plugin\r\n */\r\n\r\n if (d) {\r\n this.$items.off('click.lg click.lgcustom');\r\n $.removeData(_this.el, 'lightGallery');\r\n }\r\n\r\n // Unbind all events added by lightGallery\r\n this.$el.off('.lg.tm');\r\n\r\n // Distroy all lightGallery modules\r\n $.each($.fn.lightGallery.modules, function(key) {\r\n if (_this.modules[key]) {\r\n _this.modules[key].destroy();\r\n }\r\n });\r\n\r\n this.lGalleryOn = false;\r\n\r\n clearTimeout(_this.hideBartimeout);\r\n this.hideBartimeout = false;\r\n $(window).off('.lg');\r\n $('body').removeClass('lg-on lg-from-hash');\r\n\r\n if (_this.$outer) {\r\n _this.$outer.removeClass('lg-visible');\r\n }\r\n\r\n $('.lg-backdrop').removeClass('in');\r\n\r\n setTimeout(function() {\r\n if (_this.$outer) {\r\n _this.$outer.remove();\r\n }\r\n\r\n $('.lg-backdrop').remove();\r\n\r\n _this.$el.trigger('onCloseAfter.lg');\r\n }, _this.s.backdropDuration + 50);\r\n };\r\n\r\n $.fn.lightGallery = function(options) {\r\n return this.each(function() {\r\n if (!$.data(this, 'lightGallery')) {\r\n $.data(this, 'lightGallery', new Plugin(this, options));\r\n } else {\r\n try {\r\n $(this).data('lightGallery').init();\r\n } catch (err) {\r\n console.error('lightGallery has not initiated properly');\r\n }\r\n }\r\n });\r\n };\r\n\r\n $.fn.lightGallery.modules = {};\r\n\r\n})(jQuery, window, document);\r\n","/*! lightgallery - v1.2.4 - 2015-09-26\r\n* http://sachinchoolur.github.io/lightGallery/\r\n* Copyright (c) 2015 Sachin N; Licensed Apache 2.0 */\r\n(function($, window, document, undefined) {\r\n\r\n 'use strict';\r\n\r\n var defaults = {\r\n thumbnail: true,\r\n\r\n animateThumb: true,\r\n currentPagerPosition: 'middle',\r\n\r\n thumbWidth: 100,\r\n thumbContHeight: 100,\r\n thumbMargin: 5,\r\n\r\n exThumbImage: false,\r\n showThumbByDefault: true,\r\n toogleThumb: true,\r\n pullCaptionUp: true,\r\n\r\n enableThumbDrag: true,\r\n enableThumbSwipe: true,\r\n swipeThreshold: 50,\r\n\r\n loadYoutubeThumbnail: true,\r\n youtubeThumbSize: 1,\r\n\r\n loadVimeoThumbnail: true,\r\n vimeoThumbSize: 'thumbnail_small',\r\n\r\n loadDailymotionThumbnail: true\r\n };\r\n\r\n var Thumbnail = function(element) {\r\n\r\n // get lightGallery core plugin data\r\n this.core = $(element).data('lightGallery');\r\n\r\n // extend module default settings with lightGallery core settings\r\n this.core.s = $.extend({}, defaults, this.core.s);\r\n\r\n this.$el = $(element);\r\n this.$thumbOuter = null;\r\n this.thumbOuterWidth = 0;\r\n this.thumbTotalWidth = (this.core.$items.length * (this.core.s.thumbWidth + this.core.s.thumbMargin));\r\n this.thumbIndex = this.core.index;\r\n\r\n // Thumbnail animation value\r\n this.left = 0;\r\n\r\n this.init();\r\n\r\n return this;\r\n };\r\n\r\n Thumbnail.prototype.init = function() {\r\n if (this.core.s.thumbnail && this.core.$items.length > 1) {\r\n if (this.core.s.showThumbByDefault) {\r\n this.core.$outer.addClass('lg-thumb-open');\r\n }\r\n\r\n if (this.core.s.pullCaptionUp) {\r\n this.core.$outer.addClass('lg-pull-caption-up');\r\n }\r\n\r\n this.build();\r\n if (this.core.s.animateThumb) {\r\n if (this.core.s.enableThumbDrag && !this.core.isTouch && this.core.doCss()) {\r\n this.enableThumbDrag();\r\n }\r\n\r\n if (this.core.s.enableThumbSwipe && this.core.isTouch && this.core.doCss()) {\r\n this.enableThumbSwipe();\r\n }\r\n\r\n this.thumbClickable = false;\r\n } else {\r\n this.thumbClickable = true;\r\n }\r\n\r\n this.toogle();\r\n this.thumbkeyPress();\r\n }\r\n };\r\n\r\n Thumbnail.prototype.build = function() {\r\n var _this = this;\r\n var thumbList = '';\r\n var vimeoErrorThumbSize = '';\r\n var $thumb;\r\n var html = '
' +\r\n '
' +\r\n '
' +\r\n '
';\r\n\r\n switch (this.core.s.vimeoThumbSize) {\r\n case 'thumbnail_large':\r\n vimeoErrorThumbSize = '640';\r\n break;\r\n case 'thumbnail_medium':\r\n vimeoErrorThumbSize = '200x150';\r\n break;\r\n case 'thumbnail_small':\r\n vimeoErrorThumbSize = '100x75';\r\n }\r\n\r\n _this.core.$outer.addClass('lg-has-thumb');\r\n\r\n _this.core.$outer.find('.lg').append(html);\r\n\r\n _this.$thumbOuter = _this.core.$outer.find('.lg-thumb-outer');\r\n _this.thumbOuterWidth = _this.$thumbOuter.width();\r\n\r\n if (_this.core.s.animateThumb) {\r\n _this.core.$outer.find('.lg-thumb').css({\r\n width: _this.thumbTotalWidth + 'px',\r\n position: 'relative'\r\n });\r\n }\r\n\r\n if (this.core.s.animateThumb) {\r\n _this.$thumbOuter.css('height', _this.core.s.thumbContHeight + 'px');\r\n }\r\n\r\n function getThumb(src, thumb, index) {\r\n var isVideo = _this.core.isVideo(src, index) || {};\r\n var thumbImg;\r\n var vimeoId = '';\r\n\r\n if (isVideo.youtube || isVideo.vimeo || isVideo.dailymotion) {\r\n if (isVideo.youtube) {\r\n if (_this.core.s.loadYoutubeThumbnail) {\r\n thumbImg = '//img.youtube.com/vi/' + isVideo.youtube[1] + '/' + _this.core.s.youtubeThumbSize + '.jpg';\r\n } else {\r\n thumbImg = thumb;\r\n }\r\n } else if (isVideo.vimeo) {\r\n if (_this.core.s.loadVimeoThumbnail) {\r\n thumbImg = '//i.vimeocdn.com/video/error_' + vimeoErrorThumbSize + '.jpg';\r\n vimeoId = isVideo.vimeo[1];\r\n } else {\r\n thumbImg = thumb;\r\n }\r\n } else if (isVideo.dailymotion) {\r\n if (_this.core.s.loadDailymotionThumbnail) {\r\n thumbImg = '//www.dailymotion.com/thumbnail/video/' + isVideo.dailymotion[1];\r\n } else {\r\n thumbImg = thumb;\r\n }\r\n }\r\n } else {\r\n thumbImg = thumb;\r\n }\r\n\r\n thumbList += '
';\r\n vimeoId = '';\r\n }\r\n\r\n if (_this.core.s.dynamic) {\r\n for (var i = 0; i < _this.core.s.dynamicEl.length; i++) {\r\n getThumb(_this.core.s.dynamicEl[i].src, _this.core.s.dynamicEl[i].thumb, i);\r\n }\r\n } else {\r\n _this.core.$items.each(function(i) {\r\n\r\n if (!_this.core.s.exThumbImage) {\r\n getThumb($(this).attr('href') || $(this).attr('data-src'), $(this).find('img').attr('src'), i);\r\n } else {\r\n getThumb($(this).attr('href') || $(this).attr('data-src'), $(this).attr(_this.core.s.exThumbImage), i);\r\n }\r\n\r\n });\r\n }\r\n\r\n _this.core.$outer.find('.lg-thumb').html(thumbList);\r\n\r\n $thumb = _this.core.$outer.find('.lg-thumb-item');\r\n\r\n // Load vimeo thumbnails\r\n $thumb.each(function() {\r\n var $this = $(this);\r\n var vimeoVideoId = $this.attr('data-vimeo-id');\r\n\r\n if (vimeoVideoId) {\r\n $.getJSON('http://www.vimeo.com/api/v2/video/' + vimeoVideoId + '.json?callback=?', {\r\n format: 'json'\r\n }, function(data) {\r\n $this.find('img').attr('src', data[0][_this.core.s.vimeoThumbSize]);\r\n });\r\n }\r\n });\r\n\r\n // manage active class for thumbnail\r\n $thumb.eq(_this.core.index).addClass('active');\r\n _this.core.$el.on('onBeforeSlide.lg.tm', function() {\r\n $thumb.removeClass('active');\r\n $thumb.eq(_this.core.index).addClass('active');\r\n });\r\n\r\n $thumb.on('click.lg touchend.lg', function() {\r\n var _$this = $(this);\r\n setTimeout(function() {\r\n\r\n // In IE9 and bellow touch does not support\r\n // Go to slide if browser does not support css transitions\r\n if ((_this.thumbClickable && !_this.core.lgBusy) || !_this.core.doCss()) {\r\n _this.core.index = _$this.index();\r\n _this.core.slide(_this.core.index, false, true);\r\n }\r\n }, 50);\r\n });\r\n\r\n _this.core.$el.on('onBeforeSlide.lg.tm', function() {\r\n _this.animateThumb(_this.core.index);\r\n });\r\n\r\n $(window).on('resize.lg.thumb orientationchange.lg.thumb', function() {\r\n setTimeout(function() {\r\n _this.animateThumb(_this.core.index);\r\n _this.thumbOuterWidth = _this.$thumbOuter.width();\r\n }, 200);\r\n });\r\n\r\n };\r\n\r\n Thumbnail.prototype.setTranslate = function(value) {\r\n // jQuery supports Automatic CSS prefixing since jQuery 1.8.0\r\n this.core.$outer.find('.lg-thumb').css({\r\n transform: 'translate3d(-' + (value) + 'px, 0px, 0px)'\r\n });\r\n };\r\n\r\n Thumbnail.prototype.animateThumb = function(index) {\r\n var $thumb = this.core.$outer.find('.lg-thumb');\r\n if (this.core.s.animateThumb) {\r\n var position;\r\n switch (this.core.s.currentPagerPosition) {\r\n case 'left':\r\n position = 0;\r\n break;\r\n case 'middle':\r\n position = (this.thumbOuterWidth / 2) - (this.core.s.thumbWidth / 2);\r\n break;\r\n case 'right':\r\n position = this.thumbOuterWidth - this.core.s.thumbWidth;\r\n }\r\n this.left = ((this.core.s.thumbWidth + this.core.s.thumbMargin) * index - 1) - position;\r\n if (this.left > (this.thumbTotalWidth - this.thumbOuterWidth)) {\r\n this.left = this.thumbTotalWidth - this.thumbOuterWidth;\r\n }\r\n\r\n if (this.left < 0) {\r\n this.left = 0;\r\n }\r\n\r\n if (this.core.lGalleryOn) {\r\n if (!$thumb.hasClass('on')) {\r\n this.core.$outer.find('.lg-thumb').css('transition-duration', this.core.s.speed + 'ms');\r\n }\r\n\r\n if (!this.core.doCss()) {\r\n $thumb.animate({\r\n left: -this.left + 'px'\r\n }, this.core.s.speed);\r\n }\r\n } else {\r\n if (!this.core.doCss()) {\r\n $thumb.css('left', -this.left + 'px');\r\n }\r\n }\r\n\r\n this.setTranslate(this.left);\r\n\r\n }\r\n };\r\n\r\n // Enable thumbnail dragging and swiping\r\n Thumbnail.prototype.enableThumbDrag = function() {\r\n\r\n var _this = this;\r\n var startCoords = 0;\r\n var endCoords = 0;\r\n var isDraging = false;\r\n var isMoved = false;\r\n var tempLeft = 0;\r\n\r\n _this.$thumbOuter.addClass('lg-grab');\r\n\r\n _this.core.$outer.find('.lg-thumb').on('mousedown.lg.thumb', function(e) {\r\n if (_this.thumbTotalWidth > _this.thumbOuterWidth) {\r\n // execute only on .lg-object\r\n e.preventDefault();\r\n startCoords = e.pageX;\r\n isDraging = true;\r\n\r\n // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723\r\n _this.core.$outer.scrollLeft += 1;\r\n _this.core.$outer.scrollLeft -= 1;\r\n\r\n // *\r\n _this.thumbClickable = false;\r\n _this.$thumbOuter.removeClass('lg-grab').addClass('lg-grabbing');\r\n }\r\n });\r\n\r\n $(window).on('mousemove.lg.thumb', function(e) {\r\n if (isDraging) {\r\n tempLeft = _this.left;\r\n isMoved = true;\r\n endCoords = e.pageX;\r\n\r\n _this.$thumbOuter.addClass('lg-dragging');\r\n\r\n tempLeft = tempLeft - (endCoords - startCoords);\r\n\r\n if (tempLeft > (_this.thumbTotalWidth - _this.thumbOuterWidth)) {\r\n tempLeft = _this.thumbTotalWidth - _this.thumbOuterWidth;\r\n }\r\n\r\n if (tempLeft < 0) {\r\n tempLeft = 0;\r\n }\r\n\r\n // move current slide\r\n _this.setTranslate(tempLeft);\r\n\r\n }\r\n });\r\n\r\n $(window).on('mouseup.lg.thumb', function() {\r\n if (isMoved) {\r\n isMoved = false;\r\n _this.$thumbOuter.removeClass('lg-dragging');\r\n\r\n _this.left = tempLeft;\r\n\r\n if (Math.abs(endCoords - startCoords) < _this.core.s.swipeThreshold) {\r\n _this.thumbClickable = true;\r\n }\r\n\r\n } else {\r\n _this.thumbClickable = true;\r\n }\r\n\r\n if (isDraging) {\r\n isDraging = false;\r\n _this.$thumbOuter.removeClass('lg-grabbing').addClass('lg-grab');\r\n }\r\n });\r\n\r\n };\r\n\r\n Thumbnail.prototype.enableThumbSwipe = function() {\r\n var _this = this;\r\n var startCoords = 0;\r\n var endCoords = 0;\r\n var isMoved = false;\r\n var tempLeft = 0;\r\n\r\n _this.core.$outer.find('.lg-thumb').on('touchstart.lg', function(e) {\r\n if (_this.thumbTotalWidth > _this.thumbOuterWidth) {\r\n e.preventDefault();\r\n startCoords = e.originalEvent.targetTouches[0].pageX;\r\n _this.thumbClickable = false;\r\n }\r\n });\r\n\r\n _this.core.$outer.find('.lg-thumb').on('touchmove.lg', function(e) {\r\n if (_this.thumbTotalWidth > _this.thumbOuterWidth) {\r\n e.preventDefault();\r\n endCoords = e.originalEvent.targetTouches[0].pageX;\r\n isMoved = true;\r\n\r\n _this.$thumbOuter.addClass('lg-dragging');\r\n\r\n tempLeft = _this.left;\r\n\r\n tempLeft = tempLeft - (endCoords - startCoords);\r\n\r\n if (tempLeft > (_this.thumbTotalWidth - _this.thumbOuterWidth)) {\r\n tempLeft = _this.thumbTotalWidth - _this.thumbOuterWidth;\r\n }\r\n\r\n if (tempLeft < 0) {\r\n tempLeft = 0;\r\n }\r\n\r\n // move current slide\r\n _this.setTranslate(tempLeft);\r\n\r\n }\r\n });\r\n\r\n _this.core.$outer.find('.lg-thumb').on('touchend.lg', function() {\r\n if (_this.thumbTotalWidth > _this.thumbOuterWidth) {\r\n\r\n if (isMoved) {\r\n isMoved = false;\r\n _this.$thumbOuter.removeClass('lg-dragging');\r\n if (Math.abs(endCoords - startCoords) < _this.core.s.swipeThreshold) {\r\n _this.thumbClickable = true;\r\n }\r\n\r\n _this.left = tempLeft;\r\n } else {\r\n _this.thumbClickable = true;\r\n }\r\n } else {\r\n _this.thumbClickable = true;\r\n }\r\n });\r\n\r\n };\r\n\r\n Thumbnail.prototype.toogle = function() {\r\n var _this = this;\r\n if (_this.core.s.toogleThumb) {\r\n _this.core.$outer.addClass('lg-can-toggle');\r\n _this.$thumbOuter.append('');\r\n _this.core.$outer.find('.lg-toogle-thumb').on('click.lg', function() {\r\n _this.core.$outer.toggleClass('lg-thumb-open');\r\n });\r\n }\r\n };\r\n\r\n Thumbnail.prototype.thumbkeyPress = function() {\r\n var _this = this;\r\n $(window).on('keydown.lg.thumb', function(e) {\r\n if (e.keyCode === 38) {\r\n e.preventDefault();\r\n _this.core.$outer.addClass('lg-thumb-open');\r\n } else if (e.keyCode === 40) {\r\n e.preventDefault();\r\n _this.core.$outer.removeClass('lg-thumb-open');\r\n }\r\n });\r\n };\r\n\r\n Thumbnail.prototype.destroy = function() {\r\n if (this.core.s.thumbnail && this.core.$items.length > 1) {\r\n $(window).off('resize.lg.thumb orientationchange.lg.thumb keydown.lg.thumb');\r\n this.$thumbOuter.remove();\r\n this.core.$outer.removeClass('lg-has-thumb');\r\n }\r\n };\r\n\r\n $.fn.lightGallery.modules.Thumbnail = Thumbnail;\r\n\r\n})(jQuery, window, document);\r\n","/*! lightgallery - v1.2.4 - 2015-09-26\r\n* http://sachinchoolur.github.io/lightGallery/\r\n* Copyright (c) 2015 Sachin N; Licensed Apache 2.0 */\r\n(function($, window, document, undefined) {\r\n\r\n 'use strict';\r\n\r\n var defaults = {\r\n fullScreen: true\r\n };\r\n\r\n var Fullscreen = function(element) {\r\n\r\n // get lightGallery core plugin data\r\n this.core = $(element).data('lightGallery');\r\n\r\n this.$el = $(element);\r\n\r\n // extend module defalut settings with lightGallery core settings\r\n this.core.s = $.extend({}, defaults, this.core.s);\r\n\r\n this.init();\r\n\r\n return this;\r\n };\r\n\r\n Fullscreen.prototype.init = function() {\r\n var fullScreen = '';\r\n if (this.core.s.fullScreen) {\r\n\r\n // check for fullscreen browser support\r\n if (!document.fullscreenEnabled && !document.webkitFullscreenEnabled &&\r\n !document.mozFullScreenEnabled && !document.msFullscreenEnabled) {\r\n return;\r\n } else {\r\n fullScreen = '';\r\n this.core.$outer.find('.lg-toolbar').append(fullScreen);\r\n this.fullScreen();\r\n }\r\n }\r\n };\r\n\r\n Fullscreen.prototype.reuestFullscreen = function() {\r\n var el = document.documentElement;\r\n if (el.requestFullscreen) {\r\n el.requestFullscreen();\r\n } else if (el.msRequestFullscreen) {\r\n el.msRequestFullscreen();\r\n } else if (el.mozRequestFullScreen) {\r\n el.mozRequestFullScreen();\r\n } else if (el.webkitRequestFullscreen) {\r\n el.webkitRequestFullscreen();\r\n }\r\n };\r\n\r\n Fullscreen.prototype.exitFullscreen = function() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n document.msExitFullscreen();\r\n } else if (document.mozCancelFullScreen) {\r\n document.mozCancelFullScreen();\r\n } else if (document.webkitExitFullscreen) {\r\n document.webkitExitFullscreen();\r\n }\r\n };\r\n\r\n // https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Using_full_screen_mode\r\n Fullscreen.prototype.fullScreen = function() {\r\n var _this = this;\r\n\r\n $(document).on('fullscreenchange.lg webkitfullscreenchange.lg mozfullscreenchange.lg MSFullscreenChange.lg', function() {\r\n _this.core.$outer.toggleClass('lg-fullscreen-on');\r\n });\r\n\r\n this.core.$outer.find('.lg-fullscreen').on('click.lg', function() {\r\n if (!document.fullscreenElement &&\r\n !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement) {\r\n _this.reuestFullscreen();\r\n } else {\r\n _this.exitFullscreen();\r\n }\r\n });\r\n\r\n };\r\n\r\n Fullscreen.prototype.destroy = function() {\r\n\r\n // exit from fullscreen if activated\r\n this.exitFullscreen();\r\n\r\n $(document).off('fullscreenchange.lg webkitfullscreenchange.lg mozfullscreenchange.lg MSFullscreenChange.lg');\r\n };\r\n\r\n $.fn.lightGallery.modules.fullscreen = Fullscreen;\r\n\r\n})(jQuery, window, document);\r\n","/*! lightgallery - v1.2.4 - 2015-09-26\r\n* http://sachinchoolur.github.io/lightGallery/\r\n* Copyright (c) 2015 Sachin N; Licensed Apache 2.0 */\r\n(function($, window, document, undefined) {\r\n\r\n 'use strict';\r\n\r\n var defaults = {\r\n videoMaxWidth: '855px',\r\n youtubePlayerParams: false,\r\n vimeoPlayerParams: false,\r\n dailymotionPlayerParams: false,\r\n videojs: false\r\n };\r\n\r\n var Video = function(element) {\r\n\r\n this.core = $(element).data('lightGallery');\r\n\r\n this.$el = $(element);\r\n this.core.s = $.extend({}, defaults, this.core.s);\r\n this.videoLoaded = false;\r\n\r\n this.init();\r\n\r\n return this;\r\n };\r\n\r\n Video.prototype.init = function() {\r\n var _this = this;\r\n\r\n // Event triggered when video url found without poster\r\n _this.core.$el.on('hasVideo.lg.tm', function(event, index, src, html) {\r\n _this.core.$slide.eq(index).find('.lg-video').append(_this.loadVideo(src, 'lg-object', true, index, html));\r\n if (html) {\r\n if (_this.core.s.videojs) {\r\n try {\r\n videojs(_this.core.$slide.eq(index).find('.lg-html5').get(0), {}, function() {\r\n if (!_this.videoLoaded) {\r\n this.play();\r\n }\r\n });\r\n } catch (e) {\r\n console.error('Make sure you have included videojs');\r\n }\r\n } else {\r\n _this.core.$slide.eq(index).find('.lg-html5').get(0).play();\r\n }\r\n }\r\n });\r\n\r\n // Set max width for video\r\n _this.core.$el.on('onAferAppendSlide.lg.tm', function(event, index) {\r\n _this.core.$slide.eq(index).find('.lg-video-cont').css('max-width', _this.core.s.videoMaxWidth);\r\n _this.videoLoaded = true;\r\n });\r\n\r\n var loadOnClick = function($el) {\r\n // check slide has poster\r\n if ($el.find('.lg-object').hasClass('lg-has-poster')) {\r\n\r\n // chack already video element present\r\n if (!$el.hasClass('lg-has-video')) {\r\n\r\n $el.addClass('lg-video-palying lg-has-video');\r\n\r\n var _src;\r\n var _html;\r\n var _loadVideo = function(_src, _html) {\r\n\r\n $el.find('.lg-video').append(_this.loadVideo(_src, '', false, _this.core.index, _html));\r\n\r\n if (_html) {\r\n if (_this.core.s.videojs) {\r\n try {\r\n videojs(_this.core.$slide.eq(_this.core.index).find('.lg-html5').get(0), {}, function() {\r\n this.play();\r\n });\r\n } catch (e) {\r\n console.error('Make sure you have included videojs');\r\n }\r\n } else {\r\n _this.core.$slide.eq(_this.core.index).find('.lg-html5').get(0).play();\r\n }\r\n }\r\n\r\n };\r\n\r\n if (_this.core.s.dynamic) {\r\n\r\n _src = _this.core.s.dynamicEl[_this.core.index].src;\r\n _html = _this.core.s.dynamicEl[_this.core.index].html;\r\n\r\n _loadVideo(_src, _html);\r\n\r\n } else {\r\n\r\n _src = _this.core.$items.eq(_this.core.index).attr('href') || _this.core.$items.eq(_this.core.index).attr('data-src');\r\n _html = _this.core.$items.eq(_this.core.index).attr('data-html');\r\n\r\n _loadVideo(_src, _html);\r\n\r\n }\r\n\r\n var $tempImg = $el.find('.lg-object');\r\n $el.find('.lg-video').append($tempImg);\r\n\r\n // @todo loading icon for html5 videos also\r\n // for showing the loading indicator while loading video\r\n if (!$el.find('.lg-video-object').hasClass('lg-html5')) {\r\n $el.removeClass('lg-complete');\r\n $el.find('.lg-video-object').on('load.lg error.lg', function() {\r\n $el.addClass('lg-complete');\r\n });\r\n }\r\n\r\n } else {\r\n\r\n var youtubePlayer = $el.find('.lg-youtube').get(0);\r\n var vimeoPlayer = $el.find('.lg-vimeo').get(0);\r\n var dailymotionPlayer = $el.find('.lg-dailymotion').get(0);\r\n var html5Player = $el.find('.lg-html5').get(0);\r\n if (youtubePlayer) {\r\n youtubePlayer.contentWindow.postMessage('{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*');\r\n } else if (vimeoPlayer) {\r\n try {\r\n $f(vimeoPlayer).api('play');\r\n } catch (e) {\r\n console.error('Make sure you have included froogaloop2 js');\r\n }\r\n } else if (dailymotionPlayer) {\r\n dailymotionPlayer.contentWindow.postMessage('play', '*');\r\n\r\n } else if (html5Player) {\r\n if (_this.core.s.videojs) {\r\n try {\r\n videojs(html5Player).play();\r\n } catch (e) {\r\n console.error('Make sure you have included videojs');\r\n }\r\n } else {\r\n html5Player.play();\r\n }\r\n }\r\n\r\n $el.addClass('lg-video-palying');\r\n\r\n }\r\n }\r\n };\r\n\r\n if (_this.core.doCss() && _this.core.$items.length > 1 && ((_this.core.s.enableSwipe && _this.core.isTouch) || (_this.core.s.enableDrag && !_this.core.isTouch))) {\r\n _this.core.$el.on('onSlideClick.lg.tm', function() {\r\n var $el = _this.core.$slide.eq(_this.core.index);\r\n loadOnClick($el);\r\n });\r\n } else {\r\n\r\n // For IE 9 and bellow\r\n _this.core.$slide.on('click.lg', function() {\r\n loadOnClick($(this));\r\n });\r\n }\r\n\r\n _this.core.$el.on('onBeforeSlide.lg.tm', function(event, prevIndex) {\r\n\r\n var $videoSlide = _this.core.$slide.eq(prevIndex);\r\n var youtubePlayer = $videoSlide.find('.lg-youtube').get(0);\r\n var vimeoPlayer = $videoSlide.find('.lg-vimeo').get(0);\r\n var dailymotionPlayer = $videoSlide.find('.lg-dailymotion').get(0);\r\n var html5Player = $videoSlide.find('.lg-html5').get(0);\r\n if (youtubePlayer) {\r\n youtubePlayer.contentWindow.postMessage('{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*');\r\n } else if (vimeoPlayer) {\r\n try {\r\n $f(vimeoPlayer).api('pause');\r\n } catch (e) {\r\n console.error('Make sure you have included froogaloop2 js');\r\n }\r\n } else if (dailymotionPlayer) {\r\n dailymotionPlayer.contentWindow.postMessage('pause', '*');\r\n\r\n } else if (html5Player) {\r\n if (_this.core.s.videojs) {\r\n try {\r\n videojs(html5Player).pause();\r\n } catch (e) {\r\n console.error('Make sure you have included videojs');\r\n }\r\n } else {\r\n html5Player.pause();\r\n }\r\n }\r\n\r\n //$videoSlide.addClass('lg-complete');\r\n\r\n });\r\n\r\n _this.core.$el.on('onAfterSlide.lg.tm', function(event, prevIndex) {\r\n _this.core.$slide.eq(prevIndex).removeClass('lg-video-palying');\r\n });\r\n };\r\n\r\n Video.prototype.loadVideo = function(src, addClass, noposter, index, html) {\r\n var video = '';\r\n var autoplay = 1;\r\n var a = '';\r\n var isVideo = this.core.isVideo(src, index) || {};\r\n\r\n // Enable autoplay for first video if poster doesn't exist\r\n if (noposter) {\r\n if (this.videoLoaded) {\r\n autoplay = 0;\r\n } else {\r\n autoplay = 1;\r\n }\r\n }\r\n\r\n if (isVideo.youtube) {\r\n\r\n a = '?wmode=opaque&autoplay=' + autoplay + '&enablejsapi=1';\r\n if (this.core.s.youtubePlayerParams) {\r\n a = a + '&' + $.param(this.core.s.youtubePlayerParams);\r\n }\r\n\r\n video = '';\r\n\r\n } else if (isVideo.vimeo) {\r\n\r\n a = '?autoplay=' + autoplay + '&api=1';\r\n if (this.core.s.vimeoPlayerParams) {\r\n a = a + '&' + $.param(this.core.s.vimeoPlayerParams);\r\n }\r\n\r\n video = '';\r\n\r\n } else if (isVideo.dailymotion) {\r\n\r\n a = '?wmode=opaque&autoplay=' + autoplay + '&api=postMessage';\r\n if (this.core.s.dailymotionPlayerParams) {\r\n a = a + '&' + $.param(this.core.s.dailymotionPlayerParams);\r\n }\r\n\r\n video = '';\r\n\r\n } else if (isVideo.html5) {\r\n var fL = html.substring(0, 1);\r\n if (fL === '.' || fL === '#') {\r\n html = $(html).html();\r\n }\r\n\r\n video = html;\r\n }\r\n\r\n return video;\r\n };\r\n\r\n Video.prototype.destroy = function() {\r\n this.videoLoaded = false;\r\n };\r\n\r\n $.fn.lightGallery.modules.video = Video;\r\n\r\n})(jQuery, window, document);\r\n"]}