;(function(factory){
'use strict';
if(typeof define==='function'&&define.amd){
define(['jquery'], factory);
}else if(typeof module!=='undefined'&&module.exports){
module.exports=factory(require('jquery'));
}else{
factory(jQuery);
}})(function($){
var _previousResizeWidth=-1,
_updateTimeout=-1;
var _parse=function(value){
return parseFloat(value)||0;
};
var _rows=function(elements){
var tolerance=1,
$elements=$(elements),
lastTop=null,
rows=[];
$elements.each(function(){
var $that=$(this),
top=$that.offset().top - _parse($that.css('margin-top')),
lastRow=rows.length > 0 ? rows[rows.length - 1]:null;
if(lastRow===null){
rows.push($that);
}else{
if(Math.floor(Math.abs(lastTop - top)) <=tolerance){
rows[rows.length - 1]=lastRow.add($that);
}else{
rows.push($that);
}}
lastTop=top;
});
return rows;
};
var _parseOptions=function(options){
var opts={
byRow: true,
property: 'height',
target: null,
remove: false
};
if(typeof options==='object'){
return $.extend(opts, options);
}
if(typeof options==='boolean'){
opts.byRow=options;
}else if(options==='remove'){
opts.remove=true;
}
return opts;
};
var matchHeight=$.fn.matchHeight=function(options){
var opts=_parseOptions(options);
if(opts.remove){
var that=this;
this.css(opts.property, '');
$.each(matchHeight._groups, function(key, group){
group.elements=group.elements.not(that);
});
return this;
}
if(this.length <=1&&!opts.target){
return this;
}
matchHeight._groups.push({
elements: this,
options: opts
});
matchHeight._apply(this, opts);
return this;
};
matchHeight.version='master';
matchHeight._groups=[];
matchHeight._throttle=80;
matchHeight._maintainScroll=false;
matchHeight._beforeUpdate=null;
matchHeight._afterUpdate=null;
matchHeight._rows=_rows;
matchHeight._parse=_parse;
matchHeight._parseOptions=_parseOptions;
matchHeight._apply=function(elements, options){
var opts=_parseOptions(options),
$elements=$(elements),
rows=[$elements];
var scrollTop=$(window).scrollTop(),
htmlHeight=$('html').outerHeight(true);
var $hiddenParents=$elements.parents().filter(':hidden');
$hiddenParents.each(function(){
var $that=$(this);
$that.data('style-cache', $that.attr('style'));
});
$hiddenParents.css('display', 'block');
if(opts.byRow&&!opts.target){
$elements.each(function(){
var $that=$(this),
display=$that.css('display');
if(display!=='inline-block'&&display!=='flex'&&display!=='inline-flex'){
display='block';
}
$that.data('style-cache', $that.attr('style'));
$that.css({
'display': display,
'padding-top': '0',
'padding-bottom': '0',
'margin-top': '0',
'margin-bottom': '0',
'border-top-width': '0',
'border-bottom-width': '0',
'height': '100px',
'overflow': 'hidden'
});
});
rows=_rows($elements);
$elements.each(function(){
var $that=$(this);
$that.attr('style', $that.data('style-cache')||'');
});
}
$.each(rows, function(key, row){
var $row=$(row),
targetHeight=0;
if(!opts.target){
if(opts.byRow&&$row.length <=1){
$row.css(opts.property, '');
return;
}
$row.each(function(){
var $that=$(this),
style=$that.attr('style'),
display=$that.css('display');
if(display!=='inline-block'&&display!=='flex'&&display!=='inline-flex'){
display='block';
}
var css={ 'display': display };
css[opts.property]='';
$that.css(css);
if($that.outerHeight(false) > targetHeight){
targetHeight=$that.outerHeight(false);
}
if(style){
$that.attr('style', style);
}else{
$that.css('display', '');
}});
}else{
targetHeight=opts.target.outerHeight(false);
}
$row.each(function(){
var $that=$(this),
verticalPadding=0;
if(opts.target&&$that.is(opts.target)){
return;
}
if($that.css('box-sizing')!=='border-box'){
verticalPadding +=_parse($that.css('border-top-width')) + _parse($that.css('border-bottom-width'));
verticalPadding +=_parse($that.css('padding-top')) + _parse($that.css('padding-bottom'));
}
$that.css(opts.property, (targetHeight - verticalPadding) + 'px');
});
});
$hiddenParents.each(function(){
var $that=$(this);
$that.attr('style', $that.data('style-cache')||null);
});
if(matchHeight._maintainScroll){
$(window).scrollTop((scrollTop / htmlHeight) * $('html').outerHeight(true));
}
return this;
};
matchHeight._applyDataApi=function(){
var groups={};
$('[data-match-height], [data-mh]').each(function(){
var $this=$(this),
groupId=$this.attr('data-mh')||$this.attr('data-match-height');
if(groupId in groups){
groups[groupId]=groups[groupId].add($this);
}else{
groups[groupId]=$this;
}});
$.each(groups, function(){
this.matchHeight(true);
});
};
var _update=function(event){
if(matchHeight._beforeUpdate){
matchHeight._beforeUpdate(event, matchHeight._groups);
}
$.each(matchHeight._groups, function(){
matchHeight._apply(this.elements, this.options);
});
if(matchHeight._afterUpdate){
matchHeight._afterUpdate(event, matchHeight._groups);
}};
matchHeight._update=function(throttle, event){
if(event&&event.type==='resize'){
var windowWidth=$(window).width();
if(windowWidth===_previousResizeWidth){
return;
}
_previousResizeWidth=windowWidth;
}
if(!throttle){
_update(event);
}else if(_updateTimeout===-1){
_updateTimeout=setTimeout(function(){
_update(event);
_updateTimeout=-1;
}, matchHeight._throttle);
}};
$(matchHeight._applyDataApi);
var on=$.fn.on ? 'on':'bind';
$(window)[on]('load', function(event){
matchHeight._update(false, event);
});
$(window)[on]('resize orientationchange', function(event){
matchHeight._update(true, event);
});
});
!function(root,factory){"function"==typeof define&&define.amd?define(["jquery"],factory):"object"==typeof module&&module.exports?module.exports=factory(require("jquery")):root.Fresco=factory(jQuery)}(this,function($){function baseToString(value){return"string"==typeof value?value:null==value?"":value+""}function Timers(){return this.initialize.apply(this,_slice.call(arguments))}function getURIData(url){var result={type:"image"};return $.each(Types,function(i,type){var data=type.data(url);data&&(result=data,result.type=i,result.url=url)}),result}function detectExtension(url){var ext=(url||"").replace(/\?.*/g,"").match(/\.([^.]{3,4})$/);return ext?ext[1].toLowerCase():null}function View(){this.initialize.apply(this,_slice.call(arguments))}function Thumbnail(){this.initialize.apply(this,_slice.call(arguments))}var Fresco={};$.extend(Fresco,{version:"2.3.0"}),Fresco.Skins={fresco:{}};var Bounds={viewport:function(){var dimensions={width:$(window).width()};if(Browser.MobileSafari||Browser.Android&&Browser.Gecko){var zoom=document.documentElement.clientWidth/window.innerWidth;dimensions.height=window.innerHeight*zoom}else dimensions.height=$(window).height();return dimensions}},Browser=function(uA){function getVersion(identifier){var version=new RegExp(identifier+"([\\d.]+)").exec(uA);return version?parseFloat(version[1]):!0}return{IE:!(!window.attachEvent||-1!==uA.indexOf("Opera"))&&getVersion("MSIE "),Opera:uA.indexOf("Opera")>-1&&(!!window.opera&&opera.version&&parseFloat(opera.version())||7.55),WebKit:uA.indexOf("AppleWebKit/")>-1&&getVersion("AppleWebKit/"),Gecko:uA.indexOf("Gecko")>-1&&-1===uA.indexOf("KHTML")&&getVersion("rv:"),MobileSafari:!!uA.match(/Apple.*Mobile.*Safari/),Chrome:uA.indexOf("Chrome")>-1&&getVersion("Chrome/"),ChromeMobile:uA.indexOf("CrMo")>-1&&getVersion("CrMo/"),Android:uA.indexOf("Android")>-1&&getVersion("Android "),IEMobile:uA.indexOf("IEMobile")>-1&&getVersion("IEMobile/")}}(navigator.userAgent),_slice=Array.prototype.slice,_={isElement:function(object){return object&&1===object.nodeType},String:{capitalize:function(string){return string=baseToString(string),string&&string.charAt(0).toUpperCase()+string.slice(1)}}};!function(){function wheel(event){var realDelta;if(event.originalEvent.wheelDelta?realDelta=event.originalEvent.wheelDelta/120:event.originalEvent.detail&&(realDelta=-event.originalEvent.detail/3),realDelta){var customEvent=$.Event("fresco:mousewheel");$(event.target).trigger(customEvent,realDelta),customEvent.isPropagationStopped()&&event.stopPropagation(),customEvent.isDefaultPrevented()&&event.preventDefault()}}$(document.documentElement).on("mousewheel DOMMouseScroll",wheel)}();var Fit={within:function(bounds,dimensions){for(var options=$.extend({height:!0,width:!0},arguments[2]||{}),size=$.extend({},dimensions),scale=1,attempts=5,fit={width:options.width,height:options.height};attempts>0&&(fit.width&&size.width>bounds.width||fit.height&&size.height>bounds.height);){var scaleX=1,scaleY=1;fit.width&&size.width>bounds.width&&(scaleX=bounds.width/size.width),fit.height&&size.height>bounds.height&&(scaleY=bounds.height/size.height),scale=Math.min(scaleX,scaleY),size={width:dimensions.width*scale,height:dimensions.height*scale},attempts--}return size.width=Math.max(size.width,0),size.height=Math.max(size.height,0),size}};$.extend($.easing,{frescoEaseInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b},frescoEaseInSine:function(x,t,b,c,d){return-c*Math.cos(t/d*(Math.PI/2))+c+b},frescoEaseOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b}});var Support=function(){function prefixed(property){return testAllProperties(property,"prefix")}function testProperties(properties,prefixed){for(var i in properties)if(void 0!==testElement.style[properties[i]])return"prefix"===prefixed?properties[i]:!0;return!1}function testAllProperties(property,prefixed){var ucProperty=property.charAt(0).toUpperCase()+property.substr(1),properties=(property+" "+domPrefixes.join(ucProperty+" ")+ucProperty).split(" ");return testProperties(properties,prefixed)}var testElement=document.createElement("div"),domPrefixes="Webkit Moz O ms Khtml".split(" ");return{canvas:function(){var canvas=document.createElement("canvas");return!(!canvas.getContext||!canvas.getContext("2d"))}(),css:{animation:testAllProperties("animation"),transform:testAllProperties("transform"),prefixed:prefixed},svg:!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,touch:function(){try{return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}catch(e){return!1}}()}}();Support.detectMobileTouch=function(){Support.mobileTouch=Support.touch&&(Browser.MobileSafari||Browser.Android||Browser.IEMobile||Browser.ChromeMobile||!/^(Win|Mac|Linux)/.test(navigator.platform))},Support.detectMobileTouch();var ImageReady=function(){return this.initialize.apply(this,Array.prototype.slice.call(arguments))};$.extend(ImageReady.prototype,{supports:{naturalWidth:function(){return"naturalWidth"in new Image}()},initialize:function(img,successCallback,errorCallback){return this.img=$(img)[0],this.successCallback=successCallback,this.errorCallback=errorCallback,this.isLoaded=!1,this.options=$.extend({method:"naturalWidth",pollFallbackAfter:1e3},arguments[3]||{}),this.supports.naturalWidth&&"onload"!==this.options.method?this.img.complete&&"undefined"!==$.type(this.img.naturalWidth)?void setTimeout($.proxy(function(){this.img.naturalWidth>0?this.success():this.error()},this)):($(this.img).bind("error",$.proxy(function(){setTimeout($.proxy(function(){this.error()},this))},this)),this.intervals=[[1e3,10],[2e3,50],[4e3,100],[2e4,500]],this._ipos=0,this._time=0,this._delay=this.intervals[this._ipos][1],void this.poll()):void setTimeout($.proxy(this.fallback,this))},poll:function(){this._polling=setTimeout($.proxy(function(){if(this.img.naturalWidth>0)return void this.success();if(this._time+=this._delay,this.options.pollFallbackAfter&&this._time>=this.options.pollFallbackAfter&&!this._usedPollFallback&&(this._usedPollFallback=!0,this.fallback()),this._time>this.intervals[this._ipos][0]){if(!this.intervals[this._ipos+1])return void this.error();this._ipos++,this._delay=this.intervals[this._ipos][1]}this.poll()},this),this._delay)},fallback:function(){var img=new Image;this._fallbackImg=img,img.onload=$.proxy(function(){img.onload=function(){},this.supports.naturalWidth||(this.img.naturalWidth=img.width,this.img.naturalHeight=img.height),this.success()},this),img.onerror=$.proxy(this.error,this),img.src=this.img.src},abort:function(){this._fallbackImg&&(this._fallbackImg.onload=function(){}),this._polling&&(clearTimeout(this._polling),this._polling=null)},success:function(){this._calledSuccess||(this._calledSuccess=!0,this.isLoaded=!0,this.successCallback(this))},error:function(){this._calledError||(this._calledError=!0,this.abort(),this.errorCallback&&this.errorCallback(this))}}),$.extend(Timers.prototype,{initialize:function(){this._timers={}},set:function(name,handler,ms){this._timers[name]=setTimeout(handler,ms)},get:function(name){return this._timers[name]},clear:function(name){name?this._timers[name]&&(clearTimeout(this._timers[name]),delete this._timers[name]):this.clearAll()},clearAll:function(){$.each(this._timers,function(i,timer){clearTimeout(timer)}),this._timers={}}});var Type={isVideo:function(type){return/^(youtube|vimeo)$/.test(type)}},Types={image:{extensions:"bmp gif jpeg jpg png webp",detect:function(url){return $.inArray(detectExtension(url),this.extensions.split(" "))>-1},data:function(url){return this.detect()?{extension:detectExtension(url)}:!1}},vimeo:{detect:function(url){var res=/(vimeo\.com)\/([a-zA-Z0-9-_]+)(?:\S+)?$/i.exec(url);return res&&res[2]?res[2]:!1},data:function(url){var id=this.detect(url);return id?{id:id}:!1}},youtube:{detect:function(url){var res=/(youtube\.com|youtu\.be)\/watch\?(?=.*vi?=([a-zA-Z0-9-_]+))(?:\S+)?$/.exec(url);return res&&res[2]?res[2]:(res=/(youtube\.com|youtu\.be)\/(vi?\/|u\/|embed\/)?([a-zA-Z0-9-_]+)(?:\S+)?$/i.exec(url),res&&res[3]?res[3]:!1)},data:function(url){var id=this.detect(url);return id?{id:id}:!1}}},VimeoThumbnail=function(){var VimeoThumbnail=function(){return this.initialize.apply(this,_slice.call(arguments))};$.extend(VimeoThumbnail.prototype,{initialize:function(url,successCallback,errorCallback){this.url=url,this.successCallback=successCallback,this.errorCallback=errorCallback,this.load()},load:function(){var cache=Cache.get(this.url);if(cache)return this.successCallback(cache.data.url);var protocol="http"+(window.location&&"https:"===window.location.protocol?"s":"")+":",video_id=getURIData(this.url).id;this._xhr=$.getJSON(protocol+"//vimeo.com/api/oembed.json?url="+protocol+"//vimeo.com/"+video_id+"&callback=?",$.proxy(function(_data){if(_data&&_data.thumbnail_url){var data={url:_data.thumbnail_url};Cache.set(this.url,data),this.successCallback(data.url)}else this.errorCallback()},this))},abort:function(){this._xhr&&(this._xhr.abort(),this._xhr=null)}});var Cache={cache:[],get:function(url){for(var entry=null,i=0;i<this.cache.length;i++)this.cache[i]&&this.cache[i].url===url&&(entry=this.cache[i]);return entry},set:function(url,data){this.remove(url),this.cache.push({url:url,data:data})},remove:function(url){for(var i=0;i<this.cache.length;i++)this.cache[i]&&this.cache[i].url===url&&delete this.cache[i]}};return VimeoThumbnail}(),VimeoReady=function(){var VimeoReady=function(){return this.initialize.apply(this,_slice.call(arguments))};$.extend(VimeoReady.prototype,{initialize:function(url,callback){this.url=url,this.callback=callback,this.load()},load:function(){var cache=Cache.get(this.url);if(cache)return this.callback(cache.data);var protocol="http"+(window.location&&"https:"===window.location.protocol?"s":"")+":",video_id=getURIData(this.url).id;this._xhr=$.getJSON(protocol+"//vimeo.com/api/oembed.json?url="+protocol+"//vimeo.com/"+video_id+"&maxwidth=9999999&maxheight=9999999&callback=?",$.proxy(function(_data){var data={dimensions:{width:_data.width,height:_data.height}};Cache.set(this.url,data),this.callback&&this.callback(data)},this))},abort:function(){this._xhr&&(this._xhr.abort(),this._xhr=null)}});var Cache={cache:[],get:function(url){for(var entry=null,i=0;i<this.cache.length;i++)this.cache[i]&&this.cache[i].url===url&&(entry=this.cache[i]);return entry},set:function(url,data){this.remove(url),this.cache.push({url:url,data:data})},remove:function(url){for(var i=0;i<this.cache.length;i++)this.cache[i]&&this.cache[i].url===url&&delete this.cache[i]}};return VimeoReady}(),Options={defaults:{effects:{content:{show:0,hide:0},spinner:{show:150,hide:150},window:{show:440,hide:300},thumbnail:{show:300,delay:150},thumbnails:{slide:0}},keyboard:{left:!0,right:!0,esc:!0},loadedMethod:"naturalWidth",loop:!1,onClick:"previous-next",overflow:!1,overlay:{close:!0},preload:[1,2],position:!0,skin:"fresco",spinner:!0,spinnerDelay:300,sync:!0,thumbnails:"horizontal",ui:"outside",uiDelay:3e3,vimeo:{autoplay:1,api:1,title:1,byline:1,portrait:0,loop:0},youtube:{autoplay:1,controls:1,enablejsapi:1,hd:1,iv_load_policy:3,loop:0,modestbranding:1,rel:0,vq:"hd1080"},initialTypeOptions:{image:{},vimeo:{width:1280},youtube:{width:1280,height:720}}},create:function(opts,type,data){opts=opts||{},data=data||{},opts.skin=opts.skin||this.defaults.skin;var selected=opts.skin?$.extend({},Fresco.Skins[opts.skin]||Fresco.Skins[this.defaults.skin]):{},merged=$.extend(!0,{},this.defaults,selected);merged.initialTypeOptions&&(type&&merged.initialTypeOptions[type]&&(merged=$.extend(!0,{},merged.initialTypeOptions[type],merged)),delete merged.initialTypeOptions);var options=$.extend(!0,{},merged,opts);if(Support.mobileTouch&&"inside"===options.ui&&(options.ui="outside"),(!options.effects||Browser.IE&&Browser.IE<9)&&(options.effects={},$.each(this.defaults.effects,function(name,effect){$.each(options.effects[name]=$.extend({},effect),function(option){options.effects[name][option]=0})}),options.spinner=!1),options.keyboard&&("boolean"===$.type(options.keyboard)&&(options.keyboard={},$.each(this.defaults.keyboard,function(key,bool){options.keyboard[key]=!0})),"vimeo"!==type&&"youtube"!==type||$.extend(options.keyboard,{left:!1,right:!1})),!options.overflow||Support.mobileTouch?options.overflow={x:!1,y:!1}:"boolean"===$.type(options.overflow)&&(options.overflow={x:!1,y:!0}),"vimeo"!==type&&"youtube"!==type||(options.overlap=!1),(Browser.IE&&Browser.IE<9||Support.mobileTouch)&&(options.thumbnail=!1,options.thumbnails=!1),"youtube"!==type&&(options.width&&!options.maxWidth&&(options.maxWidth=options.width),options.height&&!options.maxHeight&&(options.maxHeight=options.height)),!options.thumbnail&&"boolean"!==$.type(options.thumbnail)){var thumbnail=!1;switch(type){case"youtube":var protocol="http"+(window.location&&"https:"===window.location.protocol?"s":"")+":";thumbnail=protocol+"//img.youtube.com/vi/"+data.id+"/0.jpg";break;case"image":case"vimeo":thumbnail=!0}options.thumbnail=thumbnail}return options}},Overlay={initialize:function(){this.build(),this.visible=!1},build:function(){this.element=$("<div>").addClass("fr-overlay").hide().append($("<div>").addClass("fr-overlay-background")),this.element.on("click",$.proxy(function(){var page=Pages.page;page&&page.view&&page.view.options.overlay&&!page.view.options.overlay.close||Window.hide()},this)),Support.mobileTouch&&this.element.addClass("fr-mobile-touch"),this.element.on("fresco:mousewheel",function(event){event.preventDefault()})},setSkin:function(skin){this.skin&&this.element.removeClass("fr-overlay-skin-"+this.skin),this.element.addClass("fr-overlay-skin-"+skin),this.skin=skin},attach:function(){$(document.body).append(this.element)},detach:function(){this.element.detach()},show:function(callback,alternateDuration){if(this.visible)return void(callback&&callback());this.visible=!0,this.attach(),this.max();var pDuration=Pages.page&&Pages.page.view.options.effects.window.show||0,duration=("number"===$.type(alternateDuration)?alternateDuration:pDuration)||0;this.element.stop(!0).fadeTo(duration,1,callback)},hide:function(callback,alternateDuration){if(!this.visible)return void(callback&&callback());var pDuration=Pages.page&&Pages.page.view.options.effects.window.hide||0,duration=("number"===$.type(alternateDuration)?alternateDuration:pDuration)||0;this.element.stop(!0).fadeOut(duration||0,$.proxy(function(){this.detach(),this.visible=!1,callback&&callback()},this))},getScrollDimensions:function(){var dimensions={};return $.each(["width","height"],function(i,d){var D=d.substr(0,1).toUpperCase()+d.substr(1),ddE=document.documentElement;dimensions[d]=(Browser.IE?Math.max(ddE["offset"+D],ddE["scroll"+D]):Browser.WebKit?document.body["scroll"+D]:ddE["scroll"+D])||0}),dimensions},max:function(){var scrollDimensions;if(Browser.MobileSafari&&Browser.WebKit&&Browser.WebKit<533.18&&(scrollDimensions=this.getScrollDimensions(),this.element.css(scrollDimensions)),Browser.IE&&Browser.IE<9){var viewport=Bounds.viewport();this.element.css({height:viewport.height,width:viewport.width})}Support.mobileTouch&&!scrollDimensions&&this.element.css({height:this.getScrollDimensions().height})}},Window={initialize:function(){this.queues=[],this.queues.hide=$({}),this.pages=[],this._tracking=[],this._first=!0,this.timers=new Timers,this.build(),this.setSkin(Options.defaults.skin)},build:function(){if(this.element=$("<div>").addClass("fr-window fr-measured").hide().append(this._box=$("<div>").addClass("fr-box").append(this._pages=$("<div>").addClass("fr-pages"))).append(this._thumbnails=$("<div>").addClass("fr-thumbnails")),Overlay.initialize(),Pages.initialize(this._pages),Thumbnails.initialize(this._thumbnails),Spinner.initialize(),UI.initialize(),this.element.addClass("fr"+(Support.mobileTouch?"":"-no")+"-mobile-touch"),this.element.addClass("fr"+(Support.svg?"":"-no")+"-svg"),Browser.IE)for(var i=7;9>=i;i++)Browser.IE<i&&this.element.addClass("fr-ltIE"+i);this.element.on("fresco:mousewheel",function(event){event.preventDefault()})},attach:function(){this._attached||($(document.body).append(this.element),this._attached=!0)},detach:function(){this._attached&&(this.element.detach(),this._attached=!1)},setSkin:function(skin){this._skin&&this.element.removeClass("fr-window-skin-"+this._skin),this.element.addClass("fr-window-skin-"+skin),Overlay.setSkin(skin),this._skin=skin},setShowingType:function(type){this._showingType!==type&&(this._showingType&&(this.element.removeClass("fr-showing-type-"+this._showingType),Type.isVideo(this._showingType)&&this.element.removeClass("fr-showing-type-video")),this.element.addClass("fr-showing-type-"+type),Type.isVideo(type)&&this.element.addClass("fr-showing-type-video"),this._showingType=type)},startObservingResize:function(){this._onWindowResizeHandler||$(window).on("resize orientationchange",this._onWindowResizeHandler=$.proxy(this._onWindowResize,this))},stopObservingResize:function(){this._onWindowResizeHandler&&($(window).off("resize orientationchange",this._onWindowResizeHandler),this._onWindowResizeHandler=null)},_onScroll:function(){Support.mobileTouch&&this.timers.set("scroll",$.proxy(this.adjustToScroll,this),0)},_onWindowResize:function(){var page;(page=Pages.page)&&(Thumbnails.fitToViewport(),this.updateBoxDimensions(),page.fitToBox(),UI.update(),UI.adjustPrevNext(null,0),Spinner.center(),Overlay.max(),UI._onWindowResize(),this._onScroll())},adjustToScroll:function(){Support.mobileTouch&&this.element.css({top:$(window).scrollTop()})},getBoxDimensions:function(){return this._boxDimensions},updateBoxDimensions:function(){var page;if(page=Pages.page){var viewport=Bounds.viewport(),thumbnails=Thumbnails.getDimensions(),isHorizontal="horizontal"===Thumbnails._orientation;this._boxDimensions={width:isHorizontal?viewport.width:viewport.width-thumbnails.width,height:isHorizontal?viewport.height-thumbnails.height:viewport.height},this._boxPosition={top:0,left:isHorizontal?0:thumbnails.width},this._box.css($.extend({},this._boxDimensions,this._boxPosition))}},show:function(callback,alternateDuration){if(this.visible)return void(callback&&callback());this.visible=!0,this.opening=!0,this.attach(),this.timers.clear("show-window"),this.timers.clear("hide-overlay"),this.adjustToScroll();var duration=("number"===$.type(alternateDuration)?alternateDuration:Pages.page&&Pages.page.view.options.effects.window.show)||0,fx=2;Overlay[Pages.page&&Pages.page.view.options.overlay?"show":"hide"](function(){callback&&--fx<1&&callback()},duration),this.timers.set("show-window",$.proxy(function(){this._show($.proxy(function(){this.opening=!1,callback&&--fx<1&&callback()},this),duration)},this),duration>1?Math.min(.5*duration,50):1)},_show:function(callback,alternateDuration){var duration=("number"===$.type(alternateDuration)?alternateDuration:Pages.page&&Pages.page.view.options.effects.window.show)||0;this.element.stop(!0).fadeTo(duration,1,callback)},hide:function(callback){if(this.view){var hideQueue=this.queues.hide;hideQueue.queue([]),this.timers.clear("show-window"),this.timers.clear("hide-overlay");var duration=Pages.page?Pages.page.view.options.effects.window.hide:0;hideQueue.queue($.proxy(function(next_stop){Pages.stop(),Spinner.hide(),next_stop()},this)),hideQueue.queue($.proxy(function(next_unbinds){UI.disable(),UI.hide(null,duration),Keyboard.disable(),next_unbinds()},this)),hideQueue.queue($.proxy(function(next_hidden){var fx=2;this._hide(function(){--fx<1&&next_hidden()},duration),this.timers.set("hide-overlay",$.proxy(function(){Overlay.hide(function(){--fx<1&&next_hidden()},duration)},this),duration>1?Math.min(.5*duration,150):1),this._first=!0},this)),hideQueue.queue($.proxy(function(next_after_resize){this._reset(),this.stopObservingResize(),Pages.removeAll(),Thumbnails.clear(),this.timers.clear(),this._position=-1;var afterHide=Pages.page&&Pages.page.view.options.afterHide;"function"===$.type(afterHide)&&afterHide.call(Fresco),this.view=null,this.opening=!1,this.closing=!1,this.detach(),next_after_resize()},this)),"function"===$.type(callback)&&hideQueue.queue($.proxy(function(next_callback){callback(),next_callback()},this))}},_hide:function(callback,alternateDuration){var duration=("number"===$.type(alternateDuration)?alternateDuration:Pages.page&&Pages.page.view.options.effects.window.hide)||0;this.element.stop(!0).fadeOut(duration,callback)},load:function(views,position){this.views=views,this.attach(),Thumbnails.load(views),Pages.load(views),this.startObservingResize(),position&&this.setPosition(position)},setPosition:function(position,callback){this._position=position,this.view=this.views[position-1],this.stopHideQueue(),this.page=Pages.show(position,$.proxy(function(){callback&&callback()},this))},stopHideQueue:function(){this.queues.hide.queue([])},_reset:function(){this.visible=!1,UI.hide(null,0),UI.reset()},mayPrevious:function(){return this.view&&this.view.options.loop&&this.views&&this.views.length>1||1!==this._position},previous:function(force){var mayPrevious=this.mayPrevious();(force||mayPrevious)&&this.setPosition(this.getSurroundingIndexes().previous)},mayNext:function(){var hasViews=this.views&&this.views.length>1;return this.view&&this.view.options.loop&&hasViews||hasViews&&1!==this.getSurroundingIndexes().next},next:function(force){var mayNext=this.mayNext();(force||mayNext)&&this.setPosition(this.getSurroundingIndexes().next)},getSurroundingIndexes:function(){if(!this.views)return{};var pos=this._position,length=this.views.length,previous=1>=pos?length:pos-1,next=pos>=length?1:pos+1;return{previous:previous,next:next}}},Keyboard={enabled:!1,keyCode:{left:37,right:39,esc:27},enable:function(enabled){this.disable(),enabled&&($(document).on("keydown",this._onKeyDownHandler=$.proxy(this.onKeyDown,this)).on("keyup",this._onKeyUpHandler=$.proxy(this.onKeyUp,this)),this.enabled=enabled)},disable:function(){this.enabled=!1,this._onKeyUpHandler&&($(document).off("keyup",this._onKeyUpHandler).off("keydown",this._onKeyDownHandler),this._onKeyUpHandler=this._onKeyDownHandler=null)},onKeyDown:function(event){if(this.enabled){var key=this.getKeyByKeyCode(event.keyCode);if(key&&(!key||!this.enabled||this.enabled[key]))switch(event.preventDefault(),event.stopPropagation(),key){case"left":Window.previous();break;case"right":Window.next()}}},onKeyUp:function(event){if(this.enabled){var key=this.getKeyByKeyCode(event.keyCode);if(key&&(!key||!this.enabled||this.enabled[key]))switch(key){case"esc":Window.hide()}}},getKeyByKeyCode:function(keyCode){for(var key in this.keyCode)if(this.keyCode[key]===keyCode)return key;return null}},Page=function(){function Page(){return this.initialize.apply(this,_slice.call(arguments))}var _uid=0,_loadedUrlCache={},_strokes=$("<div>").addClass("fr-stroke fr-stroke-top fr-stroke-horizontal").append($("<div>").addClass("fr-stroke-color")).add($("<div>").addClass("fr-stroke fr-stroke-bottom fr-stroke-horizontal").append($("<div>").addClass("fr-stroke-color"))).add($("<div>").addClass("fr-stroke fr-stroke-left fr-stroke-vertical").append($("<div>").addClass("fr-stroke-color"))).add($("<div>").addClass("fr-stroke fr-stroke-right fr-stroke-vertical").append($("<div>").addClass("fr-stroke-color")));return $.extend(Page.prototype,{initialize:function(view,position,total){this.view=view,this.dimensions={width:0,height:0},this.uid=_uid++,this._position=position,this._total=total,this._fullClick=!1,this._visible=!1,this.queues={},this.queues.showhide=$({})},create:function(){if(!this._created){Pages.element.append(this.element=$("<div>").addClass("fr-page").append(this.container=$("<div>").addClass("fr-container")).css({opacity:0}).hide());var hasPosition=this.view.options.position&&this._total>1;if(hasPosition&&this.element.addClass("fr-has-position"),(this.view.caption||hasPosition)&&(this.element.append(this.info=$("<div>").addClass("fr-info").append($("<div>").addClass("fr-info-background")).append(_strokes.clone(!0)).append(this.infoPadder=$("<div>").addClass("fr-info-padder"))),hasPosition&&(this.element.addClass("fr-has-position"),this.infoPadder.append(this.pos=$("<div>").addClass("fr-position").append($("<span>").addClass("fr-position-text").html(this._position+" / "+this._total)))),this.view.caption&&this.infoPadder.append(this.caption=$("<div>").addClass("fr-caption").html(this.view.caption))),this.container.append(this.background=$("<div>").addClass("fr-content-background")).append(this.content=$("<div>").addClass("fr-content")),"image"==this.view.type&&(this.content.append(this.image=$("<img>").addClass("fr-content-element").attr({src:this.view.url})),this.content.append(_strokes.clone(!0))),hasPosition&&"outside"==this.view.options.ui&&this.container.append(this.positionOutside=$("<div>").addClass("fr-position-outside").append($("<div>").addClass("fr-position-background")).append($("<span>").addClass("fr-position-text").html(this._position+" / "+this._total))),"inside"==this.view.options.ui){this.content.append(this.previousInside=$("<div>").addClass("fr-side fr-side-previous fr-toggle-ui").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this.nextInside=$("<div>").addClass("fr-side fr-side-next fr-toggle-ui").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this.closeInside=$("<div>").addClass("fr-close fr-toggle-ui").append($("<div>").addClass("fr-close-background")).append($("<div>").addClass("fr-close-icon"))),(this.view.caption||hasPosition&&this.view.grouped.caption)&&(this.content.append(this.infoInside=$("<div>").addClass("fr-info fr-toggle-ui").append($("<div>").addClass("fr-info-background")).append(_strokes.clone(!0)).append(this.infoPadderInside=$("<div>").addClass("fr-info-padder"))),hasPosition&&this.infoPadderInside.append(this.posInside=$("<div>").addClass("fr-position").append($("<span>").addClass("fr-position-text").html(this._position+" / "+this._total))),this.view.caption&&this.infoPadderInside.append(this.captionInside=$("<div>").addClass("fr-caption").html(this.view.caption))),this.view.caption||!hasPosition||this.view.grouped.caption||this.content.append(this.positionInside=$("<div>").addClass("fr-position-inside fr-toggle-ui").append($("<div>").addClass("fr-position-background")).append($("<span>").addClass("fr-position-text").html(this._position+" / "+this._total)));var mayPrevious=this.view.options.loop&&this._total>1||1!=this._position,mayNext=this.view.options.loop&&this._total>1||this._position<this._total;this.previousInside[(mayPrevious?"remove":"add")+"Class"]("fr-side-disabled"),this.nextInside[(mayNext?"remove":"add")+"Class"]("fr-side-disabled")}$.each(["x","y"],$.proxy(function(i,z){this.view.options.overflow[z]&&this.element.addClass("fr-overflow-"+z)},this)),this.element.addClass("fr-type-"+this.view.type),Type.isVideo(this.view.type)&&this.element.addClass("fr-type-video"),this._total<2&&this.element.addClass("fr-no-sides"),this._created=!0}},_getSurroundingPages:function(){var preload;if(!(preload=this.view.options.preload))return[];for(var pages=[],begin=Math.max(1,this._position-preload[0]),end=Math.min(this._position+preload[1],this._total),pos=this._position,i=pos;end>=i;i++){var page=Pages.pages[i-1];page._position!=pos&&pages.push(page)}for(var i=pos;i>=begin;i--){var page=Pages.pages[i-1];page._position!=pos&&pages.push(page)}return pages},preloadSurroundingImages:function(){var pages=this._getSurroundingPages();$.each(pages,$.proxy(function(i,page){page.preload()},this))},preload:function(){this.preloading||this.preloaded||"image"!=this.view.type||!this.view.options.preload||this.loaded||(this.create(),this.preloading=!0,this.preloadReady=new ImageReady(this.image[0],$.proxy(function(imageReady){this.loaded=!0,_loadedUrlCache[this.view.url]=!0,this.preloading=!1,this.preloaded=!0,this.dimensions={width:imageReady.img.naturalWidth,height:imageReady.img.naturalHeight}},this),null,{method:"naturalWidth"}))},load:function(callback,isPreload){if(this.create(),this.loaded)return void(callback&&callback());switch(this.abort(),this.loading=!0,this.view.options.spinner&&(this._spinnerDelay=setTimeout($.proxy(function(){Spinner.show()},this),this.view.options.spinnerDelay||0)),this.view.type){case"image":if(this.error)return void(callback&&callback());this.imageReady=new ImageReady(this.image[0],$.proxy(function(imageReady){this._markAsLoaded(),this.setDimensions({width:imageReady.img.naturalWidth,height:imageReady.img.naturalHeight}),callback&&callback()},this),$.proxy(function(){this._markAsLoaded(),this.image.hide(),this.content.prepend(this.error=$("<div>").addClass("fr-error fr-content-element").append($("<div>").addClass("fr-error-icon"))),this.element.addClass("fr-has-error"),this.setDimensions({width:this.error.outerWidth(),height:this.error.outerHeight()}),this.error.css({width:"100%",height:"100%"}),callback&&callback()},this),{method:this.view.options.loadedMethod});break;case"vimeo":this.vimeoReady=new VimeoReady(this.view.url,$.proxy(function(data){this._markAsLoaded(),this.setDimensions({width:data.dimensions.width,height:data.dimensions.height}),callback&&callback()},this));break;case"youtube":this._markAsLoaded(),this.setDimensions({width:this.view.options.width,height:this.view.options.height}),callback&&callback()}},setDimensions:function(dimensions){if(this.dimensions=dimensions,this.view.options.maxWidth||this.view.options.maxHeight){var opts=this.view.options,bounds={width:opts.maxWidth?opts.maxWidth:this.dimensions.width,height:opts.maxHeight?opts.maxHeight:this.dimensions.height};this.dimensions=Fit.within(bounds,this.dimensions)}},_markAsLoaded:function(){this._abortSpinnerDelay(),this.loading=!1,this.loaded=!0,_loadedUrlCache[this.view.url]=!0,Spinner.hide(null,null,this._position)},isVideo:function(){return Type.isVideo(this.view.type)},insertVideo:function(callback){if(this.playerIframe||!this.isVideo())return void(callback&&callback());var protocol="http"+(window.location&&"https:"===window.location.protocol?"s":"")+":",playerVars=$.extend({},this.view.options[this.view.type]||{}),queryString=$.param(playerVars),urls={vimeo:protocol+"//player.vimeo.com/video/{id}?{queryString}",youtube:protocol+"//www.youtube.com/embed/{id}?{queryString}"},src=urls[this.view.type].replace("{id}",this.view._data.id).replace("{queryString}",queryString);this.content.prepend(this.playerIframe=$("<iframe webkitAllowFullScreen mozallowfullscreen allowFullScreen>").addClass("fr-content-element").attr({src:src,height:this._contentDimensions.height,width:this._contentDimensions.width,frameborder:0})),callback&&callback()},raise:function(){var lastChild=Pages.element[0].lastChild;lastChild&&lastChild===this.element[0]||Pages.element.append(this.element)},show:function(callback){var shq=this.queues.showhide;shq.queue([]),shq.queue($.proxy(function(next_stopped_inactive){var needsLoading=this.view.options.spinner&&!_loadedUrlCache[this.view.url];Spinner._visible&&!needsLoading&&Spinner.hide(),Pages.stopInactive(),next_stopped_inactive()},this)),shq.queue($.proxy(function(next_updated_UI){this.updateUI(),UI.set(this._ui),next_updated_UI()},this)),shq.queue($.proxy(function(next_keyboard){Keyboard.enable(this.view.options.keyboard),next_keyboard()},this)),shq.queue($.proxy(function(next_loaded){Spinner.setSkin(this.view.options.skin),this.load($.proxy(function(){this.preloadSurroundingImages(),next_loaded()},this))},this)),shq.queue($.proxy(function(next_utility){this.raise(),Window.setSkin(this.view.options.skin),UI.enable(),this.fitToBox(),Window.adjustToScroll(),next_utility()},this)),this.isVideo()&&shq.queue($.proxy(function(next_video_inserted){this.insertVideo($.proxy(function(){next_video_inserted()}))},this)),this.view.options.sync||shq.queue($.proxy(function(next_synced){Pages.hideInactive(next_synced)},this)),shq.queue($.proxy(function(next_shown){
var fx=3,duration=this.view.options.effects.content.show;Window.setShowingType(this.view.type),Window.visible||(duration=this.view.options.effects.window.show,"function"===$.type(this.view.options.onShow)&&this.view.options.onShow.call(Fresco)),this.view.options.sync&&(fx++,Pages.hideInactive(function(){--fx<1&&next_shown()})),Window.show(function(){--fx<1&&next_shown()},this.view.options.effects.window.show),this._show(function(){--fx<1&&next_shown()},duration),UI.adjustPrevNext(function(){--fx<1&&next_shown()},Window._first?0:duration),Window._first?(UI.show(null,0),Window._first=!1):UI.show(null,0);var afterPosition=this.view.options.afterPosition;"function"===$.type(afterPosition)&&afterPosition.call(Fresco,this._position)},this)),shq.queue($.proxy(function(next_set_visible){this._visible=!0,callback&&callback(),next_set_visible()},this))},_show:function(callback,alternateDuration){var duration=Window.visible?"number"===$.type(alternateDuration)?alternateDuration:this.view.options.effects.content.show:0;this.element.stop(!0).show().fadeTo(duration||0,1,callback)},hide:function(callback,alternateDuration){if(!this.element)return void(callback&&callback());this.removeVideo(),this.abort();var duration="number"===$.type(alternateDuration)?alternateDuration:this.view.options.effects.content.hide;this.isVideo()&&(duration=0),this.element.stop(!0).fadeTo(duration,0,"frescoEaseInCubic",$.proxy(function(){this.element.hide(),this._visible=!1,Pages.removeTracking(this._position),callback&&callback()},this))},stop:function(){var shq=this.queues.showhide;shq.queue([]),this.element&&this.element.stop(!0),this.abort()},removeVideo:function(){this.playerIframe&&(this.playerIframe[0].src="//about:blank",this.playerIframe.remove(),this.playerIframe=null)},remove:function(){this.stop(),this.removeVideo(),this.element&&this.element.remove(),this._track&&(Pages.removeTracking(this._position),this._track=!1),this.preloadReady&&(this.preloadReady.abort(),this.preloadReady=null,this.preloading=null,this.preloaded=null),this._visible=!1,this.removed=!0},abort:function(){this.imageReady&&(this.imageReady.abort(),this.imageReady=null),this.vimeoReady&&(this.vimeoReady.abort(),this.vimeoReady=null),this._abortSpinnerDelay(),this.loading=!1},_abortSpinnerDelay:function(){this._spinnerDelay&&(clearTimeout(this._spinnerDelay),this._spinnerDelay=null)},_getInfoHeight:function(width){var hasPosition=this.view.options.position&&this._total>1;switch(this._ui){case"fullclick":case"inside":if(!this.view.caption&&!hasPosition)return 0;break;case"outside":if(!this.view.caption)return 0}var info="inside"===this._ui?this.infoInside:this.info;"outside"===this._ui&&(width=Math.min(width,Window._boxDimensions.width));var height,oldWidth=info[0].style.width;return"inside"!==this._ui&&"fullclick"!==this._ui||(oldWidth="100%"),info.css({width:width+"px"}),height=parseFloat(info.outerHeight()),info.css({width:oldWidth}),height},_whileVisible:function(fn,extraElements){var shown=[],showElements=Window.element.add(this.element);extraElements&&(showElements=showElements.add(extraElements)),$.each(showElements,function(i,element){var visible=$(element).is(":visible");visible||shown.push($(element).show())});var has_nocap=this.element.hasClass("fr-no-caption");this.element.removeClass("fr-no-caption");var has_hascap=this.element.hasClass("fr-has-caption");this.element.addClass("fr-has-caption"),Window.element.css({visibility:"hidden"}),fn(),Window.element.css({visibility:"visible"}),has_nocap&&this.element.addClass("fr-no-caption"),has_hascap||this.element.removeClass("fr-has-caption"),$.each(shown,function(i,element){element.hide()})},updateForced:function(){this.create(),this._fullClick=this.view.options.fullClick,this._noOverflow=!1,parseInt(this.element.css("min-width"))>0&&(this._fullClick=!0),parseInt(this.element.css("min-height"))>0&&(this._noOverflow=!0)},updateUI:function(){this.updateForced();var ui=this._fullClick?"fullclick":this.view.options.ui;this._ui&&this.element.removeClass("fr-ui-"+this._ui),this.element.addClass("fr-ui-"+ui),this._ui=ui},fitToBox:function(){if(this.content){var bounds=(this.element,$.extend({},Window.getBoxDimensions())),dimensions=$.extend({},this.dimensions),container=this.container;this.updateUI();var padding={left:parseInt(container.css("padding-left")),top:parseInt(container.css("padding-top"))};if("outside"===this._ui&&this._positionOutside){var positionWidth=0;this._whileVisible($.proxy(function(){this._positionOutside.is(":visible")&&(positionWidth=this._positionOutside.outerWidth(!0))},this)),positionWidth>padding.left&&(padding.left=positionWidth)}bounds.width-=2*padding.left,bounds.height-=2*padding.top;var backgroundDimensions,extraShowElements,fitOptions={width:!0,height:this._noOverflow?!0:!this.view.options.overflow.y},fitted=Fit.within(bounds,dimensions,fitOptions),contentDimensions=$.extend({},fitted),infoHeight=(this.content,0),isInside="inside"===this._ui,info=isInside?this.infoInside:this.info,caption=isInside?this.captionInside:this.caption,pos=isInside?this.posInside:this.pos,infoCaption=!!caption;switch(this._ui){case"outside":var preScale=$.extend({},contentDimensions);this.caption&&(extraShowElements=this.caption,this._whileVisible($.proxy(function(){for(var count=0,attempts=2;attempts>count;){infoHeight=this._getInfoHeight(contentDimensions.width);var spaceBottom=bounds.height-contentDimensions.height;infoHeight>spaceBottom&&(contentDimensions=Fit.within({width:contentDimensions.width,height:Math.max(contentDimensions.height-(infoHeight-spaceBottom),0)},contentDimensions,fitOptions)),count++}infoHeight=this._getInfoHeight(contentDimensions.width);var infoShowLimit=.5;(!this.view.options.overflow.y&&infoHeight+contentDimensions.height>bounds.height||info&&"none"===info.css("display")||infoShowLimit&&infoHeight>=infoShowLimit*contentDimensions.height)&&(infoCaption=!1,infoHeight=0,contentDimensions=preScale)},this),extraShowElements)),info&&info.css({width:contentDimensions.width+"px"}),backgroundDimensions={width:contentDimensions.width,height:contentDimensions.height+infoHeight};break;case"inside":this.caption&&(extraShowElements=caption,this._whileVisible($.proxy(function(){infoHeight=this._getInfoHeight(contentDimensions.width);var infoShowLimit=.45;infoShowLimit&&infoHeight>=infoShowLimit*contentDimensions.height&&(infoCaption=!1,infoHeight=0)},this),extraShowElements)),backgroundDimensions=contentDimensions;break;case"fullclick":var extraElements=[];caption&&extraElements.push(caption),this._whileVisible($.proxy(function(){if((caption||pos)&&info.css({width:"100%"}),infoHeight=this._getInfoHeight(Window._boxDimensions.width),caption&&infoHeight>.5*bounds.height)if(infoCaption=!1,pos){var c_disp=this.caption.is(":visible");this.caption.hide(),infoHeight=this._getInfoHeight(Window._boxDimensions.width),c_disp&&this.caption.show()}else infoHeight=0;contentDimensions=Fit.within({width:bounds.width,height:Math.max(0,bounds.height-infoHeight)},contentDimensions,fitOptions),backgroundDimensions=contentDimensions},this),extraElements),this.content.css({"padding-bottom":0})}caption&&caption[infoCaption?"show":"hide"](),this.element[(infoCaption?"remove":"add")+"Class"]("fr-no-caption"),this.element[(infoCaption?"add":"remove")+"Class"]("fr-has-caption"),this.content.css(contentDimensions),this.background.css(backgroundDimensions),this.playerIframe&&this.playerIframe.attr(contentDimensions),this.overlap={y:backgroundDimensions.height+("fullclick"===this._ui?infoHeight:0)-Window._boxDimensions.height,x:0},this._track=!this._noOverflow&&this.view.options.overflow.y&&this.overlap.y>0,this._infoHeight=infoHeight,this._padding=padding,this._contentDimensions=contentDimensions,this._backgroundDimensions=backgroundDimensions,Pages[(this._track?"set":"remove")+"Tracking"](this._position),this.position()}},position:function(){if(this.content){var contentDimensions=this._contentDimensions,backgroundDimensions=this._backgroundDimensions,contentPosition={top:.5*Window._boxDimensions.height-.5*backgroundDimensions.height,left:.5*Window._boxDimensions.width-.5*backgroundDimensions.width},infoPosition={top:contentPosition.top+contentDimensions.height,left:contentPosition.left},containerBottom=0,info="inside"===this._ui?this.infoInside:this.info;switch(this._ui){case"fullclick":contentPosition.top=.5*(Window._boxDimensions.height-this._infoHeight)-.5*backgroundDimensions.height,infoPosition={top:Window._boxDimensions.height-this._infoHeight,left:0,bottom:"auto"},containerBottom=this._infoHeight;break;case"inside":infoPosition={top:"auto",left:0,bottom:0}}if(this.overlap.y>0){var xyp=Pages.getXYP();switch(contentPosition.top=0-xyp.y*this.overlap.y,this._ui){case"outside":case"fullclick":infoPosition.top=Window._boxDimensions.height-this._infoHeight;break;case"inside":var bottom=contentPosition.top+contentDimensions.height-Window._boxDimensions.height,top=-1*contentPosition.top;if(infoPosition.bottom=bottom,this.closeInside.css({top:top}),this._total>1){var windowVisible=Window.element.is(":visible");windowVisible||Window.element.show();var pRestoreStyle=this.previousInside.attr("style");this.previousInside.removeAttr("style");var pnMarginTop=parseInt(this.previousInside.css("margin-top"));this.previousInside.attr({style:pRestoreStyle}),windowVisible||Window.element.hide();var buttons=this.previousInside.add(this.nextInside),center=.5*this.overlap.y;buttons.css({"margin-top":pnMarginTop+(top-center)}),this.positionInside&&this.positionInside.css({bottom:bottom})}}}else"inside"===this._ui&&this.element.find(".fr-info, .fr-side, .fr-close, .fr-position-inside").removeAttr("style");info&&info.css(infoPosition),this.container.css({bottom:containerBottom}),this.content.css(contentPosition),this.background.css(contentPosition)}}}),Page}(),Pages={initialize:function(element){this.element=element,this.pages=[],this.uid=1,this._tracking=[]},load:function(views){this.views=views,this.removeAll(),$.each(views,$.proxy(function(i,view){this.pages.push(new Page(view,i+1,this.views.length))},this))},show:function(position,callback){var page=this.pages[position-1];this.page&&this.page.uid===page.uid||(this.page=page,Thumbnails.show(position),Window.updateBoxDimensions(),page.show($.proxy(function(){callback&&callback()},this)))},getPositionInActivePageGroup:function(element){var position=0;return $.each(this.pages,function(i,page){page.view.element&&page.view.element===element&&(position=i+1)}),position},getLoadingCount:function(){var count=0;return $.each(this.pages,function(i,page){page.loading&&count++}),count},removeAll:function(){$.each(this.pages,function(i,page){page.remove()}),this.pages=[]},hideInactive:function(callback,alternateDuration){var _pages=[];$.each(this.pages,$.proxy(function(i,page){page.uid!==this.page.uid&&_pages.push(page)},this));var fx=0+_pages.length;return 1>fx?callback&&callback():$.each(_pages,function(i,page){page.hide(function(){callback&&--fx<1&&callback()},alternateDuration)}),_pages.length},stopInactive:function(){$.each(this.pages,$.proxy(function(i,page){page.uid!==this.page.uid&&page.stop()},this))},stop:function(){$.each(this.pages,function(i,page){page.stop()})},handleTracking:function(event){Browser.IE&&Browser.IE<9?(this.setXY({x:event.pageX,y:event.pageY}),this.updatePositions()):this._tracking_timer=setTimeout($.proxy(function(){this.setXY({x:event.pageX,y:event.pageY}),this.updatePositions()},this),30)},clearTrackingTimer:function(){this._tracking_timer&&(clearTimeout(this._tracking_timer),this._tracking_timer=null)},startTracking:function(){Support.mobileTouch||this._handleTracking||$(document.documentElement).on("mousemove",this._handleTracking=$.proxy(this.handleTracking,this))},stopTracking:function(){!Support.mobileTouch&&this._handleTracking&&($(document.documentElement).off("mousemove",this._handleTracking),this._handleTracking=null,this.clearTrackingTimer())},setTracking:function(position){this.isTracking(position)||(this._tracking.push(this.pages[position-1]),1===this._tracking.length&&this.startTracking())},clearTracking:function(){this._tracking=[]},removeTracking:function(position){this._tracking=$.grep(this._tracking,function(page){return page._position!==position}),this._tracking.length<1&&this.stopTracking()},isTracking:function(position){var found=!1;return $.each(this._tracking,function(i,page){return page._position===position?(found=!0,!1):void 0}),found},setXY:function(xy){this._xy=xy},getXYP:function(){var page=Pages.page,dimensions=$.extend({},Window._boxDimensions),xy=$.extend({},this._xy);xy.y-=$(window).scrollTop(),page&&("outside"===page._ui||"fullclick"===page._ui)&&page._infoHeight>0&&(dimensions.height-=page._infoHeight),xy.y-=Window._boxPosition.top;var xyp={x:0,y:Math.min(Math.max(xy.y/dimensions.height,0),1)},safetyPX=20,wh={x:"width",y:"height"},safety={};return $.each("y".split(" "),$.proxy(function(i,z){safety[z]=Math.min(Math.max(safetyPX/dimensions[wh[z]],0),1),xyp[z]*=1+2*safety[z],xyp[z]-=safety[z],xyp[z]=Math.min(Math.max(xyp[z],0),1)},this)),this.setXYP(xyp),this._xyp},setXYP:function(xyp){this._xyp=xyp},updatePositions:function(){this._tracking.length<1||$.each(this._tracking,function(i,page){page.position()})}};$.extend(View.prototype,{initialize:function(object){var options=arguments[1]||{},data={};if("string"===$.type(object))object={url:object};else if(object&&1===object.nodeType){var element=$(object);object={element:element[0],url:element.attr("href"),caption:element.attr("data-fresco-caption"),group:element.attr("data-fresco-group"),extension:element.attr("data-fresco-extension"),type:element.attr("data-fresco-type"),options:element.attr("data-fresco-options")&&eval("({"+element.attr("data-fresco-options")+"})")||{}}}return object&&(object.extension||(object.extension=detectExtension(object.url)),object.type||(data=getURIData(object.url),object._data=data,object.type=data.type)),object._data||(object._data=getURIData(object.url)),object&&object.options?object.options=$.extend(!0,$.extend({},options),$.extend({},object.options)):object.options=$.extend({},options),object.options=Options.create(object.options,object.type,object._data),$.extend(this,object),this}});var Spinner={supported:Support.css.transform&&Support.css.animation,initialize:function(element){this.element=$("<div>").addClass("fr-spinner").hide();for(var i=1;12>=i;i++)this.element.append($("<div>").addClass("fr-spin-"+i));this.element.on("click",$.proxy(function(){Window.hide()},this)),this.element.on("fresco:mousewheel",function(event){event.preventDefault()})},setSkin:function(skin){this.supported&&(this._skin&&this.element.removeClass("fr-spinner-skin-"+this._skin),this.updateDimensions(),this.element.addClass("fr-spinner-skin-"+skin),this._skin=skin)},updateDimensions:function(){var attached=this._attached;attached||this.attach(),this._dimensions={width:this.element.outerWidth(),height:this.element.outerHeight()},attached||this.detach()},attach:function(){this._attached||($(document.body).append(this.element),this._attached=!0)},detach:function(){this._attached&&(this.element.detach(),this._attached=!1)},show:function(callback,alternateDuration){this._visible=!0,this.attach(),this.center();var pDuration=Pages.page&&Pages.page.view.options.effects.spinner.show||0,duration=("number"===$.type(alternateDuration)?alternateDuration:pDuration)||0;this.element.stop(!0).fadeTo(duration,1,callback)},hide:function(callback,alternateDuration,position){this._visible=!1;var pDuration=Pages.page&&Pages.page.view.options.effects.spinner.hide||0,duration=("number"===$.type(alternateDuration)?alternateDuration:pDuration)||0;this.element.stop(!0).fadeOut(duration||0,$.proxy(function(){this.detach(),callback&&callback()},this))},center:function(){if(this.supported){this._dimensions||this.updateDimensions();var page=Pages.page,iH=0;page&&"fullclick"===page._ui&&page._whileVisible(function(){iH=page._getInfoHeight(Window._boxDimensions.width)}),this.element.css({top:Window._boxPosition.top+.5*Window._boxDimensions.height-.5*this._dimensions.height-.5*iH,left:Window._boxPosition.left+.5*Window._boxDimensions.width-.5*this._dimensions.width})}}},_Fresco={_disabled:!1,_fallback:!0,initialize:function(){Window.initialize(),this._disabled||this.startDelegating()},startDelegating:function(){this._delegateHandler||$(document.documentElement).on("click",".fresco[href]",this._delegateHandler=$.proxy(this.delegate,this)).on("click",this._setClickXYHandler=$.proxy(this.setClickXY,this))},stopDelegating:function(){this._delegateHandler&&($(document.documentElement).off("click",".fresco[href]",this._delegateHandler).off("click",this._setClickXYHandler),this._setClickXYHandler=null,this._delegateHandler=null)},setClickXY:function(event){Pages.setXY({x:event.pageX,y:event.pageY})},delegate:function(event){if(!this._disabled){event.stopPropagation(),event.preventDefault();var element=event.currentTarget;this.setClickXY(event),_Fresco.show(element)}},show:function(object){if(this._disabled)return void this.showFallback.apply(_Fresco,_slice.call(arguments));var options=arguments[1]||{},position=arguments[2];arguments[1]&&"number"===$.type(arguments[1])&&(position=arguments[1],options={});var views=[],object_type,isElement=_.isElement(object);switch(object_type=$.type(object)){case"string":case"object":var view=new View(object,options),_dgo="data-fresco-group-options",groupOptions={};if(view.group){if(isElement){var elements=$('.fresco[data-fresco-group="'+$(object).attr("data-fresco-group")+'"]');elements.filter("["+_dgo+"]").each(function(i,element){$.extend(groupOptions,eval("({"+($(element).attr(_dgo)||"")+"})"))}),elements.each(function(i,element){position||element!==object||(position=i+1),views.push(new View(element,$.extend({},groupOptions,options)))})}}else isElement&&$(object).is("["+_dgo+"]")&&($.extend(groupOptions,eval("({"+($(object).attr(_dgo)||"")+"})")),view=new View(object,$.extend({},groupOptions,options))),views.push(view);break;case"array":$.each(object,function(i,item){var view=new View(item,options);views.push(view)})}var groupExtend={grouped:{caption:!1}},firstUI=views[0].options.ui;$.each(views,function(i,view){view.caption&&(groupExtend.grouped.caption=!0),i>0&&view.options.ui!==firstUI&&(view.options.ui=firstUI)}),$.each(views,function(i,view){view=$.extend(view,groupExtend)}),(!position||1>position)&&(position=1),position>views.length&&(position=views.length);var positionInAPG;isElement&&(positionInAPG=Pages.getPositionInActivePageGroup(object))?Window.setPosition(positionInAPG):Window.load(views,position)},showFallback:function(){function getUrl(object){var url,type=$.type(object);return url="string"===type?object:"array"===type&&object[0]?getUrl(object[0]):_.isElement(object)&&$(object).attr("href")?$(object).attr("href"):object.url?object.url:!1}return function(object){if(this._fallback){var url=getUrl(object);url&&(window.location.href=url)}}}()};$.extend(Fresco,{show:function(object){return _Fresco.show.apply(_Fresco,_slice.call(arguments)),this},hide:function(){return Window.hide(),this},disable:function(){return _Fresco.stopDelegating(),_Fresco._disabled=!0,this},enable:function(){return _Fresco._disabled=!1,_Fresco.startDelegating(),this},fallback:function(fallback){return _Fresco._fallback=fallback,this},setDefaultSkin:function(skin){return Options.defaults.skin=skin,this}}),(Browser.IE&&Browser.IE<7||"number"===$.type(Browser.Android)&&Browser.Android<3||Browser.MobileSafari&&"number"===$.type(Browser.WebKit)&&Browser.WebKit<533.18)&&(_Fresco.show=_Fresco.showFallback);var Thumbnails={initialize:function(element){this.element=element,this._thumbnails=[],this._orientation="vertical",this._vars={thumbnail:{},thumbnailFrame:{},thumbnails:{}},this.build(),this.startObserving()},build:function(){this.element.append(this.wrapper=$("<div>").addClass("fr-thumbnails-wrapper").append(this._slider=$("<div>").addClass("fr-thumbnails-slider").append(this._previous=$("<div>").addClass("fr-thumbnails-side fr-thumbnails-side-previous").append(this._previous_button=$("<div>").addClass("fr-thumbnails-side-button").append($("<div>").addClass("fr-thumbnails-side-button-background")).append($("<div>").addClass("fr-thumbnails-side-button-icon")))).append(this._thumbs=$("<div>").addClass("fr-thumbnails-thumbs").append(this._slide=$("<div>").addClass("fr-thumbnails-slide"))).append(this._next=$("<div>").addClass("fr-thumbnails-side fr-thumbnails-side-next").append(this._next_button=$("<div>").addClass("fr-thumbnails-side-button").append($("<div>").addClass("fr-thumbnails-side-button-background")).append($("<div>").addClass("fr-thumbnails-side-button-icon"))))))},startObserving:function(){this._slider.delegate(".fr-thumbnail","click",$.proxy(function(event){event.stopPropagation();var thumbnail=$(event.target).closest(".fr-thumbnail")[0],position=thumbnail&&$(thumbnail).data("fr-position");position&&(this.setActive(position),Window.setPosition(position))},this)),this._slider.bind("click",function(event){event.stopPropagation()}),this._previous.bind("click",$.proxy(this.previousPage,this)),this._next.bind("click",$.proxy(this.nextPage,this))},load:function(views){this.clear();var orientation="horizontal",disabled=!1;$.each(views,$.proxy(function(i,view){"vertical"===view.options.thumbnails&&(orientation="vertical"),view.options.thumbnails||(disabled=!0)},this)),this.setOrientation(orientation),this._disabledGroup=disabled,$.each(views,$.proxy(function(i,view){this._thumbnails.push(new Thumbnail(view,i+1))},this)),this.fitToViewport()},clear:function(){$.each(this._thumbnails,function(i,thumbnail){thumbnail.remove()}),this._thumbnails=[],this._position=-1,this._page=-1},setOrientation:function(orientation){this._orientation&&Window.element.removeClass("fr-thumbnails-"+this._orientation),Window.element.addClass("fr-thumbnails-"+orientation),this._orientation=orientation},disable:function(){Window.element.removeClass("fr-thumbnails-enabled").addClass("fr-thumbnails-disabled"),this._disabled=!0},enable:function(){Window.element.removeClass("fr-thumbnails-disabled").addClass("fr-thumbnails-enabled"),this._disabled=!1},enabled:function(){return!this._disabled},disabled:function(){return this._disabled},updateVars:function(){var win=Window.element,vars=this._vars,orientation=this._orientation,isHorizontal="horizontal"===orientation,_top=isHorizontal?"top":"left",_left=isHorizontal?"left":"top",_mbottom=isHorizontal?"bottom":"left",_mtop=isHorizontal?"top":"right",_width=isHorizontal?"width":"height",_height=isHorizontal?"height":"width",_swapZ={left:"right",right:"left",top:"bottom",bottom:"top"};this.element.removeClass("fr-thumbnails-measured");var w_vis=win.is(":visible");if(w_vis||win.show(),this.disabled()&&this.enable(),!this.element.is(":visible")||this._thumbnails.length<2||this._disabledGroup)return this.disable(),$.extend(this._vars.thumbnails,{width:0,height:0}),w_vis||win.hide(),void this.element.addClass("fr-thumbnails-measured");this.enable();var previous=this._previous,next=this._next,viewport=Bounds.viewport(),height=this.element["inner"+_.String.capitalize(_height)](),paddingTop=parseInt(this._thumbs.css("padding-"+_top))||0,thumbnailHeight=Math.max(height-2*paddingTop,0),paddingLeft=parseInt(this._thumbs.css("padding-"+_left))||0,marginTotal=(parseInt(this.element.css("margin-"+_mbottom))||0)+(parseInt(this.element.css("margin-"+_mtop))||0);$.extend(vars.thumbnails,{height:height+marginTotal,width:viewport[isHorizontal?"width":"height"],paddingTop:paddingTop}),$.extend(vars.thumbnail,{height:thumbnailHeight,width:thumbnailHeight}),$.extend(vars.thumbnailFrame,{width:thumbnailHeight+2*paddingLeft,height:height}),vars.sides={previous:{width:next["inner"+_.String.capitalize(_width)](),marginLeft:parseInt(previous.css("margin-"+_left))||0,marginRight:parseInt(previous.css("margin-"+_swapZ[_left]))||0},next:{width:next["inner"+_.String.capitalize(_width)](),marginLeft:parseInt(next.css("margin-"+_left))||0,marginRight:parseInt(next.css("margin-"+_swapZ[_left]))||0}};var viewportWidth=viewport[_width],thumbnailOuterWidth=vars.thumbnailFrame.width,thumbs=this._thumbnails.length;vars.thumbnails.width=viewportWidth,vars.sides.enabled=thumbs*thumbnailOuterWidth/viewportWidth>1;var thumbsWidth=viewportWidth,vs=vars.sides,vsPrevious=vs.previous,vsNext=vs.next,sidesWidth=vsPrevious.marginLeft+vsPrevious.width+vsPrevious.marginRight+vsNext.marginLeft+vsNext.width+vsNext.marginRight;vars.sides.enabled&&(thumbsWidth-=sidesWidth),thumbsWidth=Math.floor(thumbsWidth/thumbnailOuterWidth)*thumbnailOuterWidth;var totalThumbsWidth=thumbs*thumbnailOuterWidth;thumbsWidth>totalThumbsWidth&&(thumbsWidth=totalThumbsWidth);var wrapperWidth=thumbsWidth+(vars.sides.enabled?sidesWidth:0);vars.ipp=Math.round(thumbsWidth/thumbnailOuterWidth),this._mode="page",vars.ipp<=1&&(thumbsWidth=viewportWidth,wrapperWidth=viewportWidth,vars.sides.enabled=!1,this._mode="center"),vars.pages=Math.ceil(thumbs*thumbnailOuterWidth/thumbsWidth),vars.wrapper={width:wrapperWidth+1,height:height},vars.thumbs={width:thumbsWidth,height:height},vars.slide={width:thumbs*thumbnailOuterWidth+1,height:height},w_vis||win.hide(),this.element.addClass("fr-thumbnails-measured")},hide:function(){this.disable(),this.thumbnails.hide(),this._visible=!1},getDimensions:function(){var isHorizontal="horizontal"===this._orientation;return{width:isHorizontal?this._vars.thumbnails.width:this._vars.thumbnails.height,height:isHorizontal?this._vars.thumbnails.height:this._vars.thumbnails.width}},fitToViewport:function(){if(this.updateVars(),!this.disabled()){var vars=$.extend({},this._vars),isHorizontal="horizontal"===this._orientation;$.each(this._thumbnails,function(i,thumbnail){thumbnail.resize()}),this._previous[vars.sides.enabled?"show":"hide"](),this._next[vars.sides.enabled?"show":"hide"](),this._thumbs.css({width:vars.thumbs[isHorizontal?"width":"height"],height:vars.thumbs[isHorizontal?"height":"width"]}),this._slide.css({width:vars.slide[isHorizontal?"width":"height"],height:vars.slide[isHorizontal?"height":"width"]});var wrapperCSS={width:vars.wrapper[isHorizontal?"width":"height"],height:vars.wrapper[isHorizontal?"height":"width"]};wrapperCSS["margin-"+(isHorizontal?"left":"top")]=Math.round(-.5*vars.wrapper.width)+"px",wrapperCSS["margin-"+(isHorizontal?"top":"left")]=0,this.wrapper.css(wrapperCSS),this._position&&this.moveTo(this._position,!0)}},moveToPage:function(page){if(!(1>page||page>this._vars.pages||page===this._page)){var position=this._vars.ipp*(page-1)+1;this.moveTo(position)}},previousPage:function(){this.moveToPage(this._page-1)},nextPage:function(){this.moveToPage(this._page+1)},show:function(position){var instant=this._position<0;1>position&&(position=1);var ic=this._thumbnails.length;position>ic&&(position=ic),this._position=position,this.setActive(position),"page"===this._mode&&this._page===Math.ceil(position/this._vars.ipp)||this.moveTo(position,instant)},moveTo:function(position,instant){if(this.updateVars(),!this.disabled()){var left,page,isHorizontal="horizontal"===this._orientation,vp_z=Bounds.viewport()[isHorizontal?"width":"height"],vp_center=.5*vp_z,t_width=this._vars.thumbnailFrame.width;if("page"===this._mode){page=Math.ceil(position/this._vars.ipp),this._page=page,left=-1*(t_width*(this._page-1)*this._vars.ipp);var disabled="fr-thumbnails-side-button-disabled";this._previous_button[(2>page?"add":"remove")+"Class"](disabled),this._next_button[(page>=this._vars.pages?"add":"remove")+"Class"](disabled)}else left=vp_center+-1*(t_width*(position-1)+.5*t_width);page=Pages.page;var resetCSS={},animateCSS={};resetCSS[isHorizontal?"top":"left"]=0,animateCSS[isHorizontal?"left":"top"]=left+"px",this._slide.stop(!0).css(resetCSS).animate(animateCSS,instant?0:page?page.view.options.effects.thumbnails.slide||0:0,$.proxy(function(){this.loadCurrentPage()},this))}},loadCurrentPage:function(){var min,max;if(this._position&&this._vars.thumbnailFrame.width&&!(this._thumbnails.length<1)){if("page"===this._mode){if(this._page<1)return;min=(this._page-1)*this._vars.ipp+1,max=Math.min(min-1+this._vars.ipp,this._thumbnails.length)}else{var thumbnail_count=Math.ceil(this._vars.thumbnails.width/this._vars.thumbnailFrame.width);min=Math.max(Math.floor(Math.max(this._position-.5*thumbnail_count,0)),1),max=Math.ceil(Math.min(this._position+.5*thumbnail_count)),this._thumbnails.length<max&&(max=this._thumbnails.length)}for(var i=min;max>=i;i++)this._thumbnails[i-1].load()}},setActive:function(position){this._slide.find(".fr-thumbnail-active").removeClass("fr-thumbnail-active");var thumbnail=position&&this._thumbnails[position-1];thumbnail&&thumbnail.activate()},refresh:function(){this._position&&this.setPosition(this._position)}};$.extend(Thumbnail.prototype,{initialize:function(view,position){this.view=view,this._position=position,this.preBuild()},preBuild:function(){this.thumbnail=$("<div>").addClass("fr-thumbnail").data("fr-position",this._position)},build:function(){if(!this.thumbnailFrame){var options=this.view.options;Thumbnails._slide.append(this.thumbnailFrame=$("<div>").addClass("fr-thumbnail-frame").append(this.thumbnail.append(this.thumbnailWrapper=$("<div>").addClass("fr-thumbnail-wrapper")))),"image"===this.view.type&&this.thumbnail.addClass("fr-load-thumbnail").data("thumbnail",{view:this.view,src:options.thumbnail||this.view.url});var icon=options.thumbnail&&options.thumbnail.icon;icon&&this.thumbnail.append($("<div>").addClass("fr-thumbnail-icon fr-thumbnail-icon-"+icon));var overlay;this.thumbnail.append(overlay=$("<div>").addClass("fr-thumbnail-overlay").append($("<div>").addClass("fr-thumbnail-overlay-background")).append(this.loading=$("<div>").addClass("fr-thumbnail-loading").append($("<div>").addClass("fr-thumbnail-loading-background")).append(this.spinner=$("<div>").addClass("fr-thumbnail-spinner").hide().append($("<div>").addClass("fr-thumbnail-spinner-spin")))).append($("<div>").addClass("fr-thumbnail-overlay-border"))),this.thumbnail.append($("<div>").addClass("fr-thumbnail-state")),this.resize()}},remove:function(){this.thumbnailFrame&&(this.thumbnailFrame.remove(),this.thumbnailFrame=null,this.image=null),this.ready&&(this.ready.abort(),this.ready=null),this.vimeoThumbnail&&(this.vimeoThumbnail.abort(),this.vimeoThumbnail=null),this._loading=!1,this._removed=!0,this.view=null,this._clearDelay()},load:function(){if(!(this._loaded||this._loading||this._removed)){this.thumbnailWrapper||this.build(),this._loading=!0;var thumbnail=this.view.options.thumbnail,url=thumbnail&&"boolean"===$.type(thumbnail)?this.view.url:thumbnail||this.view.url;if(this._url=url,url)if("vimeo"===this.view.type)if(url===thumbnail)this._url=url,this._load(this._url);else switch(this.view.type){case"vimeo":this.vimeoThumbnail=new VimeoThumbnail(this.view.url,$.proxy(function(url){this._url=url,this._load(url)},this),$.proxy(function(){this._error()},this))}else this._load(this._url)}},activate:function(){this.thumbnail.addClass("fr-thumbnail-active")},_load:function(url){this.thumbnailWrapper.prepend(this.image=$("<img>").addClass("fr-thumbnail-image").attr({src:url}).css({opacity:1e-4})),this.fadeInSpinner(),this.ready=new ImageReady(this.image[0],$.proxy(function(imageready){var img=imageready.img;this.thumbnailFrame&&this._loading&&(this._loaded=!0,this._loading=!1,this._dimensions={width:img.naturalWidth,height:img.naturalHeight},this.resize(),this.show())},this),$.proxy(function(){this._error()},this),{method:this.view.options.loadedMethod})},_error:function(){this._loaded=!0,this._loading=!1,this.thumbnail.addClass("fr-thumbnail-error"),this.image&&this.image.hide(),this.thumbnailWrapper.append($("<div>").addClass("fr-thumbnail-image")),this.show()},fadeInSpinner:function(){if(Spinner.supported&&this.view.options.spinner){this._clearDelay();var fx=this.view.options.effects.thumbnail;this._delay=setTimeout($.proxy(function(){this.spinner.stop(!0).fadeTo(fx.show||0,1)},this),this.view.options.spinnerDelay||0)}},show:function(){
this._clearDelay();var fx=this.view.options.effects.thumbnail;this.loading.stop(!0).delay(fx.delay).fadeTo(fx.show,0)},_clearDelay:function(){this._delay&&(clearTimeout(this._delay),this._delay=null)},resize:function(){if(this.thumbnailFrame){var isHorizontal="horizontal"===Thumbnails._orientation;if(this.thumbnailFrame.css({width:Thumbnails._vars.thumbnailFrame[isHorizontal?"width":"height"],height:Thumbnails._vars.thumbnailFrame[isHorizontal?"height":"width"]}),this.thumbnailFrame.css({top:isHorizontal?0:Thumbnails._vars.thumbnailFrame.width*(this._position-1),left:isHorizontal?Thumbnails._vars.thumbnailFrame.width*(this._position-1):0}),this.thumbnailWrapper){var thumbnail=Thumbnails._vars.thumbnail;if(this.thumbnail.css({width:thumbnail.width,height:thumbnail.height,"margin-top":Math.round(-.5*thumbnail.height),"margin-left":Math.round(-.5*thumbnail.width),"margin-bottom":0,"margin-right":0}),this._dimensions){var dimensions,bounds={width:thumbnail.width,height:thumbnail.height},maxZ=Math.max(bounds.width,bounds.height),image=$.extend({},this._dimensions);if(image.width>bounds.width&&image.height>bounds.height){dimensions=Fit.within(bounds,image);var scaleX=1,scaleY=1;dimensions.width<bounds.width&&(scaleX=bounds.width/dimensions.width),dimensions.height<bounds.height&&(scaleY=bounds.height/dimensions.height);var scale=Math.max(scaleX,scaleY);scale>1&&(dimensions.width*=scale,dimensions.height*=scale),$.each("width height".split(" "),function(i,z){dimensions[z]=Math.round(dimensions[z])})}else dimensions=Fit.within(this._dimensions,image.width<bounds.width||image.height<bounds.height?{width:maxZ,height:maxZ}:bounds);var x=Math.round(.5*bounds.width-.5*dimensions.width),y=Math.round(.5*bounds.height-.5*dimensions.height);this.image.removeAttr("style").css($.extend({},dimensions,{top:y,left:x}))}}}}});var UI={_modes:["fullclick","outside","inside"],_ui:!1,_validClickTargetSelector:[".fr-content-element",".fr-content",".fr-content > .fr-stroke",".fr-content > .fr-stroke .fr-stroke-color"].join(", "),initialize:function(element){$.each(this._modes,$.proxy(function(i,mode){this[mode].initialize()},this)),Window.element.addClass("fr-ui-inside-hidden fr-ui-fullclick-hidden")},set:function(ui){this._ui&&(Window.element.removeClass("fr-window-ui-"+this._ui),Overlay.element.removeClass("fr-overlay-ui-"+this._ui)),Window.element.addClass("fr-window-ui-"+ui),Overlay.element.addClass("fr-overlay-ui-"+ui),this._enabled&&this._ui&&this._ui!==ui&&(this[this._ui].disable(),this[ui].enable(),UI[ui].show()),this._ui=ui},_onWindowResize:function(){Support.mobileTouch&&this.show()},enable:function(){$.each(this._modes,$.proxy(function(i,mode){UI[mode][mode===this._ui?"enable":"disable"]()},this)),this._enabled=!0},disable:function(){$.each(this._modes,$.proxy(function(i,mode){UI[mode].disable()},this)),this._enabled=!1},adjustPrevNext:function(callback,alternateDuration){UI[this._ui].adjustPrevNext(callback,alternateDuration)},show:function(callback,alternateDuration){UI[this._ui].show(callback,alternateDuration)},hide:function(callback,alternateDuration){UI[this._ui].hide(callback,alternateDuration)},reset:function(){$.each(this._modes,$.proxy(function(i,mode){UI[mode].reset()},this))},update:function(){var page=Pages.page;page&&this.set(page._ui)}};return UI.fullclick={initialize:function(){this.build(),this._scrollLeft=-1},build:function(){Window._box.append(this._previous=$("<div>").addClass("fr-side fr-side-previous fr-side-previous-fullclick fr-toggle-ui").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this._next=$("<div>").addClass("fr-side fr-side-next fr-side-next-fullclick fr-toggle-ui").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this._close=$("<div>").addClass("fr-close fr-close-fullclick").append($("<div>").addClass("fr-close-background")).append($("<div>").addClass("fr-close-icon"))),Browser.IE&&Browser.IE<=7&&this._previous.add(this._next).add(this._close).hide(),this._close.on("click",$.proxy(function(event){event.preventDefault(),Window.hide()},this)),this._previous.on("click",$.proxy(function(event){Window.previous(),this._onMouseMove(event)},this)),this._next.on("click",$.proxy(function(event){Window.next(),this._onMouseMove(event)},this))},enable:function(){this.bind()},disable:function(){this.unbind()},reset:function(){Window.timers.clear("ui-fullclick"),this._x=-1,this._y=-1,this._scrollLeft=-1,this.resetPrevNext(),this._onMouseLeave()},resetPrevNext:function(){var buttons=this._previous.add(this._next);buttons.stop(!0).removeAttr("style")},bind:function(){this._onMouseUpHandler||(this.unbind(),Window._pages.on("mouseup",".fr-container",this._onMouseUpHandler=$.proxy(this._onMouseUp,this)),Support.mobileTouch||(Window.element.on("mouseenter",this._showHandler=$.proxy(this.show,this)).on("mouseleave",this._hideHandler=$.proxy(this.hide,this)),Window.element.on("mousemove",this._mousemoveHandler=$.proxy(function(event){var x=event.pageX,y=event.pageY;this._hoveringSideButton||y===this._y&&x===this._x||(this._x=x,this._y=y,this.show(),this.startTimer())},this)),Window._pages.on("mousemove",".fr-container",this._onMouseMoveHandler=$.proxy(this._onMouseMove,this)).on("mouseleave",".fr-container",this._onMouseLeaveHandler=$.proxy(this._onMouseLeave,this)).on("mouseenter",".fr-container",this._onMouseEnterHandler=$.proxy(this._onMouseEnter,this)),Window.element.on("mouseenter",".fr-side",this._onSideMouseEnterHandler=$.proxy(this._onSideMouseEnter,this)).on("mouseleave",".fr-side",this._onSideMouseLeaveHandler=$.proxy(this._onSideMouseLeave,this)),$(window).on("scroll",this._onScrollHandler=$.proxy(this._onScroll,this))))},unbind:function(){this._onMouseUpHandler&&(Window._pages.off("mouseup",".fr-container",this._onMouseUpHandler),this._onMouseUpHandler=null,this._showHandler&&(Window.element.off("mouseenter",this._showHandler).off("mouseleave",this._hideHandler).off("mousemove",this._mousemoveHandler),Window._pages.off("mousemove",".fr-container",this._onMouseMoveHandler).off("mouseleave",".fr-container",this._onMouseLeaveHandler).off("mouseenter",".fr-container",this._onMouseEnterHandler),Window.element.off("mouseenter",".fr-side",this._onSideMouseEnterHandler).off("mouseleave",".fr-side",this._onSideMouseLeaveHandler),$(window).off("scroll",this._onScrollHandler),this._showHandler=null))},adjustPrevNext:function(callback,alternateDuration){var page=Pages.page;if(!page)return void(callback&&callback());var windowVisible=Window.element.is(":visible");windowVisible||Window.element.show();var pRestoreStyle=this._previous.attr("style");this._previous.removeAttr("style");var pnMarginTop=parseInt(this._previous.css("margin-top"));this._previous.attr({style:pRestoreStyle}),windowVisible||Window.element.hide();var iH=page._infoHeight||0,buttons=this._previous.add(this._next),css={"margin-top":pnMarginTop-.5*iH},duration="number"===$.type(alternateDuration)?alternateDuration:Pages.page&&Pages.page.view.options.effects.content.show||0;this.opening&&(duration=0),buttons.stop(!0).animate(css,duration,callback),this._previous[(Window.mayPrevious()?"remove":"add")+"Class"]("fr-side-disabled"),this._next[(Window.mayNext()?"remove":"add")+"Class"]("fr-side-disabled"),buttons[(page._total<2?"add":"remove")+"Class"]("fr-side-hidden"),callback&&callback()},_onScroll:function(){this._scrollLeft=$(window).scrollLeft()},_onMouseMove:function(event){if(!Support.mobileTouch){var side=this._getEventSide(event),Side=_.String.capitalize(side),mayClickHoveringSide=side?Window["may"+Side]():!1;if(side!==this._hoveringSide||mayClickHoveringSide!==this._mayClickHoveringSide)switch(this._hoveringSide=side,this._mayClickHoveringSide=mayClickHoveringSide,Window._box[(mayClickHoveringSide?"add":"remove")+"Class"]("fr-hovering-clickable"),side){case"previous":Window._box.addClass("fr-hovering-previous").removeClass("fr-hovering-next");break;case"next":Window._box.addClass("fr-hovering-next").removeClass("fr-hovering-previous")}}},_onMouseLeave:function(event){Window._box.removeClass("fr-hovering-clickable fr-hovering-previous fr-hovering-next"),this._hoveringSide=!1},_onMouseUp:function(event){if(!(event.which>1)){if(1===Pages.pages.length)return void Window.hide();var side=this._getEventSide(event);Window[side](),this._onMouseMove(event)}},_onMouseEnter:function(event){this._onMouseMove(event)},_getEventSide:function(event){var left=(this._scrollLeft>-1?this._scrollLeft:this._scrollLeft=$(window).scrollLeft(),event.pageX-Window._boxPosition.left-this._scrollLeft),width=Window._boxDimensions.width;return.5*width>left?"previous":"next"},_onSideMouseEnter:function(event){this._hoveringSideButton=!0,this._hoveringSide=this._getEventSide(event),this._mayClickHoveringSide=Window["may"+_.String.capitalize(this._hoveringSide)](),this.clearTimer()},_onSideMouseLeave:function(event){this._hoveringSideButton=!1,this._hoveringSide=!1,this._mayClickHoveringSide=!1,this.startTimer()},show:function(callback){return this._visible?(this.startTimer(),void("function"===$.type(callback)&&callback())):(this._visible=!0,this.startTimer(),Window.element.addClass("fr-visible-fullclick-ui").removeClass("fr-hidden-fullclick-ui"),Browser.IE&&Browser.IE<=7&&this._previous.add(this._next).add(this._close).show(),void("function"===$.type(callback)&&callback()))},hide:function(callback){var type=Pages.page&&Pages.page.view.type;return!this._visible||type&&("youtube"===type||"vimeo"===type)?void("function"===$.type(callback)&&callback()):(this._visible=!1,Window.element.removeClass("fr-visible-fullclick-ui").addClass("fr-hidden-fullclick-ui"),void("function"===$.type(callback)&&callback()))},clearTimer:function(){Support.mobileTouch||Window.timers.clear("ui-fullclick")},startTimer:function(){Support.mobileTouch||(this.clearTimer(),Window.timers.set("ui-fullclick",$.proxy(function(){this.hide()},this),Window.view?Window.view.options.uiDelay:0))}},UI.inside={initialize:function(){},enable:function(){this.bind()},disable:function(){this.unbind()},bind:function(){this._onMouseUpHandler||(this.unbind(),Window._pages.on("mouseup",".fr-content",this._onMouseUpHandler=$.proxy(this._onMouseUp,this)),Window._pages.on("click",".fr-content .fr-close",$.proxy(function(event){event.preventDefault(),Window.hide()},this)).on("click",".fr-content .fr-side-previous",$.proxy(function(event){Window.previous(),this._onMouseMove(event)},this)).on("click",".fr-content .fr-side-next",$.proxy(function(event){Window.next(),this._onMouseMove(event)},this)),Window.element.on("click",".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper",this._delegateOverlayCloseHandler=$.proxy(this._delegateOverlayClose,this)),Support.mobileTouch||(Window.element.on("mouseenter",".fr-content",this._showHandler=$.proxy(this.show,this)).on("mouseleave",".fr-content",this._hideHandler=$.proxy(this.hide,this)),Window.element.on("mousemove",".fr-content",this._mousemoveHandler=$.proxy(function(event){var x=event.pageX,y=event.pageY;this._hoveringSideButton||y===this._y&&x===this._x||(this._x=x,this._y=y,this.show(),this.startTimer())},this)),Window._pages.on("mousemove",".fr-info, .fr-close",$.proxy(function(event){event.stopPropagation(),this._onMouseLeave(event)},this)),Window._pages.on("mousemove",".fr-info",$.proxy(function(){this.clearTimer()},this)),Window._pages.on("mousemove",".fr-content",this._onMouseMoveHandler=$.proxy(this._onMouseMove,this)).on("mouseleave",".fr-content",this._onMouseLeaveHandler=$.proxy(this._onMouseLeave,this)).on("mouseenter",".fr-content",this._onMouseEnterHandler=$.proxy(this._onMouseEnter,this)),Window.element.on("mouseenter",".fr-side",this._onSideMouseEnterHandler=$.proxy(this._onSideMouseEnter,this)).on("mouseleave",".fr-side",this._onSideMouseLeaveHandler=$.proxy(this._onSideMouseLeave,this)),$(window).on("scroll",this._onScrollHandler=$.proxy(this._onScroll,this))))},unbind:function(){this._onMouseUpHandler&&(Window._pages.off("mouseup",".fr-content",this._onMouseUpHandler),this._onMouseUpHandler=null,Window._pages.off("click",".fr-content .fr-close").off("click",".fr-content .fr-side-previous").off("click",".fr-content .fr-side-next"),Window.element.off("click",".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper",this._delegateOverlayCloseHandler),this._showHandler&&(Window.element.off("mouseenter",".fr-content",this._showHandler).off("mouseleave",".fr-content",this._hideHandler).off("mousemove",".fr-content",this._mousemoveHandler),Window._pages.off("mousemove",".fr-info, .fr-close"),Window._pages.off("mousemove",".fr-info"),Window._pages.off("mousemove",".fr-content-element",this._onMouseMoveHandler).off("mouseleave",".fr-content",this._onMouseLeaveHandler).off("mouseenter",".fr-content",this._onMouseEnterHandler),Window.element.off("mouseenter",".fr-side",this._onSideMouseEnterHandler).off("mouseleave",".fr-side",this._onSideMouseLeaveHandler),$(window).off("scroll",this._onScrollHandler),this._showHandler=null))},reset:function(){Window.timers.clear("ui-fullclick"),this._x=-1,this._y=-1,this._scrollLeft=-1,this._hoveringSide=!1,this._onMouseLeave()},adjustPrevNext:function(callback){callback&&callback()},_onScroll:function(){this._scrollLeft=$(window).scrollLeft()},_delegateOverlayClose:function(event){var page=Pages.page;page&&page.view.options.overlay&&!page.view.options.overlay.close||$(event.target).is(".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper")&&(event.preventDefault(),event.stopPropagation(),Window.hide())},_onMouseMove:function(event){if(!Support.mobileTouch){var side=this._getEventSide(event),Side=_.String.capitalize(side),mayClickHoveringSide=side?Window["may"+Side]():!1;if((1===Pages.pages.length||Pages.page&&"close"===Pages.page.view.options.onClick)&&(side=!1),side!==this._hoveringSide||mayClickHoveringSide!==this._mayClickHoveringSide)if(this._hoveringSide=side,this._mayClickHoveringSide=mayClickHoveringSide,side)switch(Window._box[(mayClickHoveringSide?"add":"remove")+"Class"]("fr-hovering-clickable"),side){case"previous":Window._box.addClass("fr-hovering-previous").removeClass("fr-hovering-next");break;case"next":Window._box.addClass("fr-hovering-next").removeClass("fr-hovering-previous")}else Window._box.removeClass("fr-hovering-clickable fr-hovering-previous fr-hovering-next")}},_onMouseLeave:function(event){Window._box.removeClass("fr-hovering-clickable fr-hovering-previous fr-hovering-next"),this._hoveringSide=!1},_onMouseUp:function(event){if(!(event.which>1)&&$(event.target).is(UI._validClickTargetSelector)){if(1===Pages.pages.length||Pages.page&&"close"===Pages.page.view.options.onClick)return void Window.hide();var side=this._getEventSide(event);Window[side](),this._onMouseMove(event)}},_onMouseEnter:function(event){this._onMouseMove(event)},_getEventSide:function(event){var left=(this._scrollLeft>-1?this._scrollLeft:this._scrollLeft=$(window).scrollLeft(),event.pageX-Window._boxPosition.left-this._scrollLeft),width=Window._boxDimensions.width;return.5*width>left?"previous":"next"},_onSideMouseEnter:function(event){this._hoveringSideButton=!0,this._hoveringSide=this._getEventSide(event),this._mayClickHoveringSide=Window["may"+_.String.capitalize(this._hoveringSide)](),this.clearTimer()},_onSideMouseLeave:function(event){this._hoveringSideButton=!1,this._hoveringSide=!1,this._mayClickHoveringSide=!1,this.startTimer()},show:function(callback){return this._visible?(this.startTimer(),void("function"===$.type(callback)&&callback())):(this._visible=!0,this.startTimer(),Window.element.addClass("fr-visible-inside-ui").removeClass("fr-hidden-inside-ui"),void("function"===$.type(callback)&&callback()))},hide:function(callback){return this._visible?(this._visible=!1,Window.element.removeClass("fr-visible-inside-ui").addClass("fr-hidden-inside-ui"),void("function"===$.type(callback)&&callback())):void("function"===$.type(callback)&&callback())},clearTimer:function(){Support.mobileTouch||Window.timers.clear("ui-inside")},startTimer:function(){Support.mobileTouch||(this.clearTimer(),Window.timers.set("ui-inside",$.proxy(function(){this.hide()},this),Window.view?Window.view.options.uiDelay:0))}},UI.outside={initialize:function(){this.build(),this._scrollLeft=-1},build:function(){Window._box.append(this._previous=$("<div>").addClass("fr-side fr-side-previous fr-side-previous-outside").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this._next=$("<div>").addClass("fr-side fr-side-next fr-side-next-outside").append($("<div>").addClass("fr-side-button").append($("<div>").addClass("fr-side-button-background")).append($("<div>").addClass("fr-side-button-icon")))).append(this._close=$("<div>").addClass("fr-close fr-close-outside").append($("<div>").addClass("fr-close-background")).append($("<div>").addClass("fr-close-icon"))),Browser.IE&&Browser.IE<=7&&this._previous.add(this._next).add(this._close).hide(),this._close.on("click",$.proxy(function(event){event.preventDefault(),Window.hide()},this)),this._previous.on("click",$.proxy(function(event){Window.previous(),this._onMouseMove(event)},this)),this._next.on("click",$.proxy(function(event){Window.next(),this._onMouseMove(event)},this))},enable:function(){this.bind()},disable:function(){this.unbind()},reset:function(){Window.timers.clear("ui-outside"),this._x=-1,this._y=-1,this._scrollLeft=-1,this._onMouseLeave()},bind:function(){this._onMouseUpHandler||(this.unbind(),Window.element.on("mouseup",".fr-content",this._onMouseUpHandler=$.proxy(this._onMouseUp,this)),Window.element.on("click",".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper",this._delegateOverlayCloseHandler=$.proxy(this._delegateOverlayClose,this)),Support.mobileTouch||(Window._pages.on("mousemove",".fr-content",this._onMouseMoveHandler=$.proxy(this._onMouseMove,this)).on("mouseleave",".fr-content",this._onMouseLeaveHandler=$.proxy(this._onMouseLeave,this)).on("mouseenter",".fr-content",this._onMouseEnterHandler=$.proxy(this._onMouseEnter,this)),Window.element.on("mouseenter",".fr-side",this._onSideMouseEnterHandler=$.proxy(this._onSideMouseEnter,this)).on("mouseleave",".fr-side",this._onSideMouseLeaveHandler=$.proxy(this._onSideMouseLeave,this)),$(window).on("scroll",this._onScrollHandler=$.proxy(this._onScroll,this))))},unbind:function(){this._onMouseUpHandler&&(Window.element.off("mouseup",".fr-content",this._onMouseUpHandler),this._onMouseUpHandler=null,Window.element.off("click",".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper",this._delegateOverlayCloseHandler),this._onMouseMoveHandler&&(Window._pages.off("mousemove",".fr-content",this._onMouseMoveHandler).off("mouseleave",".fr-content",this._onMouseLeaveHandler).off("mouseenter",".fr-content",this._onMouseEnterHandler),Window.element.off("mouseenter",".fr-side",this._onSideMouseEnterHandler).off("mouseleave",".fr-side",this._onSideMouseLeaveHandler),$(window).off("scroll",this._onScrollHandler),this._onMouseMoveHandler=null))},adjustPrevNext:function(callback,alternateDuration){var page=Pages.page;if(!page)return void(callback&&callback());var buttons=this._previous.add(this._next);this._previous[(Window.mayPrevious()?"remove":"add")+"Class"]("fr-side-disabled"),this._next[(Window.mayNext()?"remove":"add")+"Class"]("fr-side-disabled"),buttons[(page._total<2?"add":"remove")+"Class"]("fr-side-hidden"),callback&&callback()},_onScroll:function(){this._scrollLeft=$(window).scrollLeft()},_delegateOverlayClose:function(event){var page=Pages.page;page&&page.view.options.overlay&&!page.view.options.overlay.close||$(event.target).is(".fr-container, .fr-thumbnails, .fr-thumbnails-wrapper")&&(event.preventDefault(),event.stopPropagation(),Window.hide())},_onMouseMove:function(event){if(!Support.mobileTouch){var side=this._getEventSide(event),Side=_.String.capitalize(side),mayClickHoveringSide=side?Window["may"+Side]():!1;if((1===Pages.pages.length||Pages.page&&"close"===Pages.page.view.options.onClick)&&(side=!1),side!==this._hoveringSide||mayClickHoveringSide!==this._mayClickHoveringSide)if(this._hoveringSide=side,this._mayClickHoveringSide=mayClickHoveringSide,side)switch(Window._box[(mayClickHoveringSide?"add":"remove")+"Class"]("fr-hovering-clickable"),side){case"previous":Window._box.addClass("fr-hovering-previous").removeClass("fr-hovering-next");break;case"next":Window._box.addClass("fr-hovering-next").removeClass("fr-hovering-previous")}else Window._box.removeClass("fr-hovering-clickable fr-hovering-previous fr-hovering-next")}},_onMouseLeave:function(event){Window._box.removeClass("fr-hovering-clickable fr-hovering-previous fr-hovering-next"),this._hoveringSide=!1},_onMouseUp:function(event){if(!(event.which>1)&&$(event.target).is(UI._validClickTargetSelector)){if(1===Pages.pages.length||Pages.page&&"close"===Pages.page.view.options.onClick)return void Window.hide();var side=this._getEventSide(event);Window[side](),this._onMouseMove(event)}},_onMouseEnter:function(event){this._onMouseMove(event)},_getEventSide:function(event){var left=(this._scrollLeft>-1?this._scrollLeft:this._scrollLeft=$(window).scrollLeft(),event.pageX-Window._boxPosition.left-this._scrollLeft),width=Window._boxDimensions.width;return.5*width>left?"previous":"next"},show:function(){Browser.IE&&Browser.IE<=7&&this._previous.add(this._next).add(this._close).show()},hide:function(){},_onSideMouseEnter:function(event){this._hoveringSideButton=!0,this._hoveringSide=this._getEventSide(event),this._mayClickHoveringSide=Window["may"+_.String.capitalize(this._hoveringSide)]()},_onSideMouseLeave:function(event){this._hoveringSideButton=!1,this._hoveringSide=!1,this._mayClickHoveringSide=!1},clearTimer:function(){}},$(document).ready(function(event){_Fresco.initialize()}),Fresco});
jQuery(function(jQuery){"use strict";var rt=window.rt||{};rt.IsMobile=function(){window.isMobileDevice={Android:function(){return navigator.userAgent.match(/Android/i)},BlackBerry:function(){return navigator.userAgent.match(/BlackBerry/i)},iOS:function(){return navigator.userAgent.match(/iPhone|iPad|iPod/i)},Opera:function(){return navigator.userAgent.match(/Opera Mini/i)},Windows:function(){return navigator.userAgent.match(/IEMobile/i)},any:function(){return isMobileDevice.Android()||isMobileDevice.BlackBerry()||isMobileDevice.iOS()||isMobileDevice.Opera()||isMobileDevice.Windows()}},isMobileDevice=/iphone|ipad|Android|webOS|iPod|BlackBerry|Windows Phone|ZuneWP7/gi.test(navigator.appVersion)},rt.HeaderDesktop=function(){var menu_link=jQuery("#menu-desktop a"),overlay_menu=jQuery(".menu-overlay");menu_link.on("click",function(event){if(menu_link.parent().removeClass("active"),jQuery(this).parent().addClass("active"),jQuery(this).parent().hasClass("sub-menu")){event.preventDefault();var menu_link_class=jQuery(this).parent().attr("class"),menu_link_class=menu_link_class.replace(" sub-menu",""),menu_link_class=menu_link_class.replace(" active","");jQuery(".menu-big").hide(),overlay_menu.fadeIn(150),jQuery(".menu-big[data-menu="+menu_link_class+"]").fadeIn(150)}});var menu_close_link=jQuery(".menu-big-close");jQuery(menu_close_link).on("click",function(event){event.preventDefault(),jQuery(".menu-big").hide(),overlay_menu.hide(),menu_link.parent().removeClass("active")})},rt.SearchForm=function(){var big_menu_form_link=jQuery(".big-menu-form a");big_menu_form_link.on("click",function(event){event.preventDefault(),jQuery(".big-menu-form a").removeClass("active"),jQuery(this).addClass("active");var big_menu_form_link=jQuery(this).attr("class"),big_menu_form_link=big_menu_form_link.replace(" active","");jQuery(".search-type").val(big_menu_form_link)});var search_header_link=jQuery(".search-header a");search_header_link.on("click",function(event){event.preventDefault(),jQuery(".search-header a").removeClass("active"),jQuery(this).addClass("active");var search_header_link=jQuery(this).attr("class"),search_header_link=search_header_link.replace(" active","");jQuery(".search-type-header").val(search_header_link)})},rt.HeaderMobile=function(){var mobile_search_link=jQuery("#mobile-icon-search"),mobile_menu_link=jQuery("#mobile-icon-menu"),mobile_menu=jQuery("#menu-mobile"),overlay_menu=jQuery(".menu-overlay");mobile_search_link.on("click",function(event){event.preventDefault(),jQuery(".menu-big[data-menu=search-menu]").fadeIn(150),jQuery(".menu-overlay").fadeIn(150)}),mobile_menu_link.on("click",function(event){event.preventDefault(),jQuery(this).hasClass("active")?(jQuery(this).removeClass("active"),mobile_menu.hide(),overlay_menu.hide(),jQuery(".menu-big").hide()):(jQuery(this).addClass("active"),mobile_menu.fadeIn(150),overlay_menu.fadeIn(150))});var mobile_menu_link=jQuery("#menu-mobile a");mobile_menu_link.on("click",function(event){if(mobile_menu_link.parent().removeClass("active"),jQuery(this).parent().addClass("active"),jQuery(this).parent().hasClass("sub-menu")){event.preventDefault();var menu_link_class=jQuery(this).parent().attr("class"),menu_link_class=menu_link_class.replace(" sub-menu",""),menu_link_class=menu_link_class.replace(" active","");jQuery(".menu-big").hide(),overlay_menu.fadeIn(150),jQuery(".menu-big[data-menu="+menu_link_class+"]").fadeIn(150)}})},rt.AqvaMenu=function(){var aqva_menu_sub=jQuery(".aqva-sub-menu > a");aqva_menu_sub.on("click",function(event){event.preventDefault()})},rt.EqualHeigth=function(){jQuery(".eq-height").matchHeight()},rt.AllSlider=function(){new Swiper("#slider-home-wrapper",{loop:!0,speed:750,autoplay:{delay:3e3},effect:"fade",fadeEffect:{crossFade:!0}}),new Swiper(".house-item-slide",{loop:!0,speed:650,navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}}),new Swiper(".blog-slider",{loop:!0,speed:450,navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}}),new Swiper("#slider-property-wrapper",{loop:!0,speed:450,autoplay:{delay:3e3},effect:"fade",fadeEffect:{crossFade:!0},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}})},rt.SearchHouse=function(){var button_buy=jQuery("#button-buy"),button_rent=jQuery("#button-rent"),search_status=jQuery("#search-status");button_buy.on("click",function(event){event.preventDefault();var button_buy_status=jQuery(this).attr("data-status");button_rent.hasClass("active")?(button_rent.removeClass("active"),button_buy.addClass("active"),search_status.val(button_buy_status)):(button_buy.addClass("active"),search_status.val(button_buy_status))}),button_rent.on("click",function(event){event.preventDefault();var button_rent_status=jQuery(this).attr("data-status");button_buy.hasClass("active")?(button_buy.removeClass("active"),button_rent.addClass("active"),search_status.val(button_rent_status)):(button_rent.addClass("active"),search_status.val(button_rent_status))});var order_select=jQuery("#order-select select"),search_order=jQuery("#search-order");jQuery("#filter-house-loop"),jQuery("#search-location");order_select.change(function(){var order_select_val=jQuery(this).find("option:selected").val();search_order.val(order_select_val)})},rt.HeroBoxHome=function(){function box_home_height(){var box_home_two=jQuery(".box-home-two").outerHeight(),box_home_item_one=jQuery(".box-home-item-one"),box_home_item_two=jQuery(".box-home-item-two"),box_home_two_height=box_home_two/2;box_home_item_one.height(box_home_two_height),box_home_item_two.height(box_home_two_height)}box_home_height(),jQuery(window).resize(function(event){box_home_height()})},rt.DownloadPDF=function(){var download_pdf=jQuery("#single-house-download-pdf"),download_pdf_form=jQuery("#download-pdf-form");download_pdf.on("click",function(event){event.preventDefault(),jQuery(this).toggleClass("active"),download_pdf_form.toggleClass("active")})},rt.ScrollTag=function(){var scroll_tag=jQuery(".scroll-tag");scroll_tag.on("click",function(event){var tag_attr=jQuery(this).attr("data-scroll");jQuery("html, body").animate({scrollTop:jQuery("#"+tag_attr).offset().top},500),event.preventDefault()})},rt.EmailSpam=function(){!function(jQuery){jQuery.fn.emailSpamProtection=function(className){return jQuery(this).find("."+className).each(function(){var jQuerythis=jQuery(this),s=jQuerythis.text().replace(" [at] ","&#64;");jQuerythis.html('<a href="mailto:'+s+'">'+s+"</a>")})}}(jQuery),jQuery("body").emailSpamProtection("email-spam")},rt.IsMobile(),rt.HeaderDesktop(),rt.SearchForm(),rt.HeaderMobile(),rt.AqvaMenu(),rt.EqualHeigth(),rt.AllSlider(),rt.SearchHouse(),rt.DownloadPDF(),rt.ScrollTag(),rt.HeroBoxHome(),rt.EmailSpam()});