(function(a){if("undefined"===typeof a.jPixie){a.jPixie={}}a.extend(a.jPixie,{version:"1.0.10",supportedItemSizes:{square:[24,32,48,64,80,120,160,240],full:[80,120,160,240,500,640,800,1024,1200,1600]}});var e=true;if(typeof b==="undefined"||typeof b.log==="undefined"){var b={log:function(){}}}var p=function(q){if(!e){return}b.log("%s: %o","jPixie -> "+q,this);return this};function d(r,q){return function(){return q.apply(r,arguments)}}var c=function(s,t,r){var u;return function q(){var x=this,v=arguments;function w(){if(!r){s.apply(x,v)}u=null}if(u){clearTimeout(u)}else{if(r){s.apply(x,v)}}u=setTimeout(w,t||300)}};var f={defaults:{multi:{},controller:{autoStart:false,autoResize:false,datasource:{api:"http://api.pix.ie/v0.x",clientId:undefined,resource:"/photos",sortBy:"recent",page:1,perPage:"auto"},waitForImages:false,onRefreshBegin:undefined,onRefreshComplete:undefined,onDataLoadingBegin:undefined,onDataLoadingFailed:undefined,onDataLoadingEmpty:undefined,onDataLoadingComplete:undefined,onDataLoaded:undefined,onRenderComplete:undefined,onImageLoadingBegin:undefined,onImageLoadingComplete:undefined,onItemSelected:undefined},thumbs:{container:undefined,isVisible:true,isSuspended:false,columns:"auto",rows:"auto",padding:4,align:"center",cropSquare:true,cropSquareThreshold:0.1,transition:undefined,itemClassName:undefined,titleVisible:false,titleLink:false,titleLinkTarget:undefined,titleLinkExternal:true,titleContainer:undefined,titleClassName:undefined,titlePosition:undefined,imageClassName:undefined,imageFormat:"square",imageSize:"auto",imageMaxSize:240,imageMinSize:16,imageAlign:"center",imageLink:false,imageLinkTarget:undefined,imageLinkExternal:true,attributionVisible:false,attributionClassName:undefined,attributionContainer:undefined,attributionLink:false,attributionLinkType:"account",attributionLinkFormat:"displayName",attributionLinkExternal:true,attributionLinkTarget:undefined,descriptionVisible:false,descriptionClassName:undefined,descriptionContainer:undefined,onRefreshBegin:undefined,onRefreshComplete:undefined,onResizeBegin:undefined,onResizeComplete:undefined,onRenderBegin:undefined,onRenderComplete:undefined,onItemCreated:undefined,onItemHoverIn:undefined,onItemHoverOut:undefined,onPageChanged:undefined,onPageChangeTransitionSimultaneous:false,onPageChangeTransitionOut:undefined,onPageChangeTransitionIn:undefined},photo:{container:undefined,isVisible:true,isSuspended:false,columns:1,rows:1,padding:0,align:"none",cropSquare:false,cropSquareThreshold:0.15,transition:undefined,itemClassName:undefined,titleVisible:false,titleLink:false,titleLinkTarget:undefined,titleLinkExternal:true,titleContainer:undefined,titleClassName:undefined,titlePosition:"before",imageClassName:undefined,imageFormat:"full",imageSize:"auto",imageMaxSize:5000,imageMinSize:16,imageAlign:"center",imageLink:true,imageLinkTarget:undefined,imageLinkExternal:true,attributionVisible:false,attributionClassName:undefined,attributionContainer:undefined,attributionLink:false,attributionLinkType:"account",attributionLinkFormat:"displayName",attributionLinkExternal:true,attributionLinkTarget:undefined,descriptionVisible:false,descriptionClassName:undefined,descriptionContainer:undefined,onRefreshBegin:undefined,onRefreshComplete:undefined,onResizeBegin:undefined,onResizeComplete:undefined,onRenderBegin:undefined,onRenderComplete:undefined,onItemCreated:undefined,onItemHoverIn:undefined,onItemHoverOut:undefined,onPageChangeTransitionSimultaneous:false,onPageChangeTransitionOut:undefined,onPageChangeTransitionIn:undefined}},transitions:{getSimultaneousDuration:function(r,q){return r?q||400:(q||400)/2},slideLeftRight:function(r,q){var s=r.$slideTo.position().left;a(this).animate({scrollLeft:s},r.duration||f.transitions.getSimultaneousDuration(r.isSimultaneous),"easeOutCirc",q)},slideUpDown:function(r,q){var s=r.$slideTo.position().top;a(this).animate({scrollTop:s},r.duration||f.transitions.getSimultaneousDuration(r.isSimultaneous),"easeOutCirc",q)},fadeOut:function(s,q){var r=s.duration||f.transitions.getSimultaneousDuration(s.isSimultaneous);a(this).fadeOut(r,"easeOutCirc",q)},fadeIn:function(s,q){var r=s.duration||f.transitions.getSimultaneousDuration(s.isSimultaneous);a(this).fadeIn(r,"easeOutCirc",q)}}};var h=function(){this.data={};this.length=0};h.prototype={get:function(q){return this.data[q]},put:function(q,r){if(!this.containsKey(q)){this.length++}this.data[q]=r},containsKey:function(q){return typeof this.data[q]!=="undefined"},remove:function(q){var r;if(typeof this.items[q]!=="undefined"){this.length--;r=this.data[q];delete this.data[q]}return r},clear:function(){for(var q in this.data){delete this.data[q]}this.length=0}};function i(){this.init()}i.prototype={init:function(){this.cachedImageSizes=[];this.cachedDataPageNumbers=new h();this.items=new h();this.itemIds=new h();this.totalCount=undefined},invalidate:function(){this.init()}};function g(q,r){this.instance=q;this.options=r;this.settings=a.extend(true,{},f.defaults.controller,r);this.model=new i();this.views=new h();this.windowScrollbarChecked=false;this.isRefreshing=false;this.dynamicId=0;this._init()}g.prototype={createView:function(t,r){var s;var q=r.container;if(typeof q==="undefined"){a.error("jPixie - no container specified in view settings");return}if(typeof q==="string"){s=q}else{if(!q[0].id){this.dynamicId++;q[0].id="jPixie_"+t+"_"+this.dynamicId}s=q[0].id}this.views.put(s,new m(s,t,this,r))},setDatasource:function(q){this.settings.datasource=a.extend(true,{},f.defaults.controller.datasource,q);this.invalidate()},suspendView:function(q){this.views.get(q).suspend()},resumeView:function(q){return this.views.get(q).resume()},showView:function(q){return this.views.get(q).show()},hideView:function(q){this.views.get(q).hide()},toggleView:function(q){this.views.get(q).toggle()},moveToItemId:function(q){var r=this.model.itemIds.get(q);if(r===undefined){a.error("Unknown ItemId: "+q);return false}else{return this.moveTo(r)}},moveToPreviousItem:function(){return this.moveTo(this.model.selectedItemIndex-1)},moveToNextItem:function(){return this.moveTo(this.model.selectedItemIndex+1)},moveToFirst:function(){return this.moveTo(0)},moveToPreviousPage:function(s){var r=this.views.get(s);var q=(r.state.selectedPageNumber-2)*r.state.layout.perPage;return this.moveTo(q)},moveToNextPage:function(s){var r=this.views.get(s);var q=(r.state.selectedPageNumber)*r.state.layout.perPage;return this.moveTo(q)},moveToPage:function(t,r){var s=this.views.get(t);var q=(r-1)*s.state.layout.perPage;return this.moveTo(q)},moveTo:function(r){if(this.model.selectedItemIndex==r||r<0||r>=this.model.totalCount){var q=new a.Deferred();q.reject();return q.promise()}this.model.selectedItemIndex=r;var t=this.refresh();var s=this;t.done(function(){if(s.settings.onItemSelected){var u=s.model.items.get(s.model.selectedItemIndex);d(s.instance,s.settings.onItemSelected)(u)}});return t},isLoaded:function(){return this.model.items.length!==0},hasNextItem:function(){return this.isLoaded()&&((this.model.selectedItemIndex+1)<this.model.totalCount)},hasPreviousItem:function(){return this.isLoaded()&&((this.model.selectedItemIndex-1)>=0)},hasNextPage:function(q){return this.isLoaded()&&this.views.get(q).hasNextPage()},hasPreviousPage:function(q){return this.isLoaded()&&this.views.get(q).hasPreviousPage()},currentItemIndex:function(){return this.model.selectedItemIndex},currentPage:function(q){return this.views.get(q).currentPage()},totalCount:function(){return this.model.totalCount},totalPages:function(q){return this.views.get(q).totalPages()},isFirstRefresh:true,refresh:function(r){this.isRefreshing=true;var q=this._refresh(this.isFirstRefresh||r);this.isFirstRefresh=false;var s=this;q.done(function(){s.isRefreshing=false});return q.promise()},invalidate:function(){this.model.invalidate();this.model.selectedItemIndex=undefined;a.each(this.views.data,function(q,r){this.invalidate()});if(this.settings.onInvalidate){d(this.instance,this.settings.onInvalidate)()}},_init:function(){if(!this._validateSettings()){return}var s=this.options;var q=typeof s.photo!=="undefined";if(q){this.createView("photo",a.extend(true,{},f.defaults.photo,this.settings.photo))}var r=typeof s.thumbs!=="undefined";if(r){this.createView("thumbs",a.extend(true,{},f.defaults.thumbs,this.settings.thumbs))}if((q||r)&&s.autoStart===true){this.moveTo(0)}},_validateSettings:function(){if(typeof this.settings.datasource==="undefined"){a.error("jPixie - No datasource specified in options");return false}return true},_refresh:function(s){if(this.settings.onRefreshBegin){d(this.instance,this.settings.onRefreshBegin)()}var q=a.Deferred();var r=this;var t;if(s){t=this._calculateDimensions()}else{var u=a.Deferred();u.resolve();t=[u]}a.when.apply(null,t).then(function(){var y=r._determineViewDataRequirements();var w=r._determineRemoteDataRequirements(y);var x=true;var v=false;if(w.dataPages.length>0){v=true;if(r.settings.onDataLoadingBegin){d(r.instance,r.settings.onDataLoadingBegin)()}x=r._fetchRemoteData(w)}a.when(x).then(function(){if(v&&r.settings.onDataLoadingComplete){d(r.instance,r.settings.onDataLoadingComplete)()}if(r.settings.onDataLoaded){d(r.instance,r.settings.onDataLoaded)()}}).fail(function(){if(v&&r.settings.onDataLoadingFailed){d(r.instance,r.settings.onDataLoadingFailed)()}q.reject();return q.promise()}).done(function(){if(r.model.items.length==0){if(v&&r.settings.onDataLoadingEmpty){d(r.instance,r.settings.onDataLoadingEmpty)()}if(r.settings.onRenderComplete){d(r.instance,r.settings.onRenderComplete)()}q.resolve();return q.promise()}r._drawViews();if(r.settings.onRenderComplete){d(r.instance,r.settings.onRenderComplete)()}if(r.settings.onImageLoadingBegin){d(r.instance,r.settings.onImageLoadingBegin)()}var z=a.Deferred();if(r.settings.waitForImages){a(r.instance).waitForImages(function(){z.resolve()});setTimeout(function(){z.resolve()},2000)}else{z.resolve()}a.when(z).then(function(){if(r.settings.onImageLoadingComplete){d(r.instance,r.settings.onImageLoadingComplete)()}var A=r._transitionViews();a.when.apply(null,A).then(function(){q.resolve()})})})});q.then(function(){if(r.settings.onRefreshComplete){d(r.instance,r.settings.onRefreshComplete)()}});return q.promise()},_calculateDimensions:function(){var q=[];for(var s in this.views.data){var r=this.views.data[s];q.push(r.recalculateDimensions())}return q},_determineViewDataRequirements:function(){var s={};var v=this.model.selectedItemIndex;var u,t;var w=2147483647,q=0;a.each(this.views.data,function(y,A){var x=A.getImageSizeName();s[x]=x;var z=A.calculatePageIndexRange(v);if(z.startIndex<w){w=z.startIndex}if(z.endIndex>q){q=z.endIndex}u=u||A.settings.attributionVisible;t=t||A.settings.descriptionVisible});var r=[];for(k in s){r.push(k)}return{startIndex:w===2147483647?0:w,endIndex:q,imageSizes:r,includeOwner:u,includeDescription:t}},_determineRemoteDataRequirements:function(E){var u;var s=false;var r=this.model.cachedImageSizes;if(typeof r==="undefined"||r.length===0){u=true}else{if(r.length<E.imageSizes.length){s=true}else{var B=E.imageSizes;for(var t=0;t<B.length;t++){var C=B[t];var v=false;for(var w=0;w<r.length;w++){if(r[w]==C){v=true;break}}if(!v){s=true;break}}}if(s){this.model.invalidate();u=true}}var y=this.settings.datasource.perPage;if(isNaN(y)){var z=(E.endIndex-E.startIndex)+1;switch(y){case"min":y=z;break;case"max":y=100;break;case"auto":default:y=z*2;break}if(y>250){y=250}}var A=this._calculatePageNumbers(E.startIndex,E.endIndex,y);var D;if(u){D={imageSizes:E.imageSizes,includeOwner:E.includeOwner,includeDescription:E.includeDescription,dataPages:A,perPage:y}}else{var x=[];var q=this.model.cachedDataPageNumbers;for(var t=0;t<A.length;t++){if(!q.get(A[t])){x.push(A[t])}}D={imageSizes:E.imageSizes,includeOwner:E.includeOwner,includeDescription:E.includeDescription,dataPages:x,perPage:y}}return D},_fetchRemoteData:function(A){var t=a.Deferred();var z=a.extend({},this.settings.datasource);z.sizes=A.imageSizes;z.includeOwner=A.includeOwner;z.includeDescription=A.includeDescription;var B=A.dataPages.length;var r=false;p("Controller - loadData -> fetching page "+A.dataPages.join(","));while(A.dataPages.length){var s;var w=A.dataPages.pop();var x=A.perPage;var y=a.extend(z,{page:w,perPage:x});var q=this._createRestUrl(y);var v=this;var u=this.model;p("Controller - API call begin");(function(C){a.getJSON(q).then(function(J){if(J===null){t.reject();return t.promise()}if(J.error){t.resolve();return t.promise()}p("Controller - API call complete");if(!u.totalCount){u.totalCount=J.totalCount}else{if(u.totalCount!=J.totalCount){v.invalidate();u.totalCount=J.totalCount;r=true}}if(u.totalCount===0){t.resolve();return t.promise()}u.cachedDataPageNumbers.put(C,true);var F=(C-1)*x;var I=J.items.length;p("Controller - loadData inserting "+F+" to "+(F+I));for(var D=0;D<I;D++){var H=J.items[D];var E=F+D;u.items.put(E,H);u.itemIds.put(H.itemId,E)}B--;if(B===0){var G=true;if(r){for(var D=0;D<A.length;D++){if(!u.cachedDataPageNumbers.get(A[D])){G=false}}}if(G){v.model.cachedImageSizes=A.imageSizes;t.resolve()}else{t.reject()}}},function(){t.reject()})})(w)}return t.promise()},_drawViews:function(){for(var q in this.views.data){this.views.data[q].refresh()}},_transitionViews:function(){var q=[];for(var r in this.views.data){q.push(this.views.data[r].transition())}return q},_calculatePageNumbers:function(w,q,v){p("Controller - calculatePageNumbers ("+w+","+q+","+v+")");var x=Math.floor(w/v)+1;var r=Math.floor(q/v)+1;var t=r-x+1;var u=[];for(var s=0;s<t;s++){u[s]=x+s}p("Controller - calculatePageNumbers pages "+u.join(","));return u},_createRestUrl:function(s){var t=[];t[t.length]=s.api;t[t.length]=s.resource.replace(/^\/group\//,"/communitygroup/");t[t.length]=".json?";var r=[];r[r.length]="oauth_consumer_key="+s.clientId;if(s.accessToken){r[r.length]="oauth_access_token="+s.accessToken}r[r.length]="page="+(s.page||1);r[r.length]="perpage="+(s.perPage||10);r[r.length]="sortby="+(s.sortBy||"recent");if(s.filter!=null){r[r.length]="filter="+s.filter}if(s.tags!=null&&s.tags.length>0){r[r.length]="tags="+s.tags.join(",");if(s.taggedBy!=null){r[r.length]="taggedby="+s.taggedBy}}else{if(s.withoutTags!=null&&s.withoutTags.length>0){r[r.length]="withouttags="+s.withoutTags.join(",")}}var q=[];if(s.includeOwner){q[q.length]="items_item_owner"}if(s.includeDescription){q[q.length]="items_item_description"}a.each(s.sizes,function(){q[q.length]="items_item_sizes_"+this});if(q.length>0){r[r.length]="extras="+q.join(",")}r[r.length]="callback=?";t[t.length]=r.join("&");return t.join("")}};function l(r,q){this.width=r;this.height=q}l.prototype={isEmpty:function(){return this.width===undefined||this.height===undefined},maxOf:function(){return this.width>this.height?this.width:this.height},minOf:function(){return this.width<this.height?this.width:this.height}};function j(q){this.imageLength=undefined;this.containerSize=q||new l()}function n(){this.columns=undefined;this.rows=undefined;this.perPage=undefined;this.photoInfo=new j();this.occupiedSize=new l();this.availableSize=new l();this.paddingSize=new l()}function o(q){this.init();this.layout=q||new n()}o.prototype={init:function(){this.$cachedPages=new h();this.$cachedPhotos=new h();this.selectedItemIndex=undefined;this.selectedPageNumber=undefined;this.$selectedPage=undefined;this.$selectedItem=undefined;this.isDirty=true},clone:function(){var q=new o();q.layout=this.layout;q.$cachedPages=this.$cachedPages;q.$cachedPhotos=this.$cachedPhotos;q.selectedItemIndex=this.selectedItemIndex;q.selectedPageNumber=this.selectedPageNumber;q.$selectedPage=this.$selectedPage;q.$selectedItem=this.$selectedItem;q.isDirty=this.isDirty;return q},invalidate:function(){this.init()}};function m(s,t,q,r){this.id=s;this.viewType=t;this.controller=q;this.options=r;this.settings=a.extend(true,{},r);this.state=new o();this.$container=undefined;this.resizeHandlerAttached=false;this.isAnimationSuspended=false;this._init()}m.prototype={scrollbarWidth:undefined,recalculateDimensions:function(){var q=a.Deferred();var r=this;setTimeout(function(){r.availableArea=undefined;r._refreshLayout();q.resolve()},0);return q.promise()},refresh:function(){if(!this.settings.isVisible||this.settings.isSuspended){return}if(this.settings.onRefreshBegin){d(this,this.settings.onRefreshBegin)()}if(this.state.animatingOut){this.state.animatingOut.stop(true,true)}if(this.state.animatingIn){this.state.animatingIn.stop(true,true)}this._refresh();if(this.settings.isVisible){this._attachResizeHandler()}if(this.settings.onRefreshComplete){d(this,this.settings.onRefreshComplete)()}},invalidate:function(){this.state.invalidate();this.$pages.empty()},suspend:function(){this.settings.isSuspended=true;this._detachResizeHandler()},resume:function(){var q=a.Deferred();if(this.settings.isSuspended){this.settings.isSuspended=false;this.suspendAnimations();var r=this;this.controller.refresh(true).then(function(){r.scrollToSelected();r._attachResizeHandler();r.resumeAnimations();q.resolve()})}else{q.resolve()}return q.promise()},scrollToSelected:function(){var q=this.$pages.children().index(this.state.$selectedPage);var r=this;setTimeout(function(){if(r.settings.transition=="leftright"){r.$slider.scrollLeft(r.$slider.width()*q)}else{if(r.settings.transition=="updown"){r.$slider.scrollTop(r.$slider.height()*q)}}},0)},show:function(){var q=a.Deferred();if(!this.settings.isVisible){this.settings.isVisible=true;this.suspendAnimations();this.$container.show();var r=this;this.controller.refresh(true).then(function(){r.scrollToSelected();r._attachResizeHandler();r.resumeAnimations();q.resolve()})}else{q.resolve()}return q.promise()},hide:function(){if(this.settings.isVisible){this.settings.isVisible=false;this._detachResizeHandler();this.$container.hide()}},toggle:function(){if(this.settings.isVisible){this.hide()}else{this.show()}},suspendAnimations:function(){this.isAnimationSuspended=true},resumeAnimations:function(){this.isAnimationSuspended=false},initLayout:function(q){if(q){this.availableArea=undefined}return this._refreshLayout()},getImageSizeName:function(){var q=this.state.layout.photoInfo.imageLength;switch(this.settings.imageFormat){case"square":return this._findActualOrNextSizeUpFromSupported(q,a.jPixie.supportedItemSizes.square)+"S";default:return this._findActualOrNextSizeUpFromSupported(q,a.jPixie.supportedItemSizes.full).toString()}},calculatePageIndexRange:function(q){return this._calculatePageIndexRange(this.state,q)},currentPage:function(){return this.state.selectedPageNumber},totalPages:function(){return Math.ceil(this.controller.model.totalCount/this.state.layout.perPage)},hasNextPage:function(){var q=(this.state.selectedPageNumber)*this.state.layout.perPage;return q<this.controller.model.totalCount},hasPreviousPage:function(){var q=(this.state.selectedPageNumber-2)*this.state.layout.perPage;return q>=0},_init:function(){if(!this._validateSettings()){return}if(a.browser.msie&&parseInt(a.browser.version,10)<=7){this.settings.transition="fade"}switch(this.settings.transition){case"leftright":this.settings.onPageChangeTransitionSimultaneous=true;this.settings.onPageChangeTransitionOut=undefined;this.settings.onPageChangeTransitionIn=f.transitions.slideLeftRight;break;case"updown":this.settings.onPageChangeTransitionSimultaneous=true;this.settings.onPageChangeTransitionOut=undefined;this.settings.onPageChangeTransitionIn=f.transitions.slideUpDown;break;case"vscroll":case"hscroll":this.settings.onPageChangeTransitionSimultaneous=false;this.settings.onPageChangeTransitionOut=undefined;this.settings.onPageChangeTransitionIn=undefined;break;case"fade":this.settings.onPageChangeTransitionSimultaneous=false;this.settings.onPageChangeTransitionOut=f.transitions.fadeOut;this.settings.onPageChangeTransitionIn=f.transitions.fadeIn;case"custom":default:break}this._initContainers()},_initContainers:function(){this.$container=a(this.settings.container);this.$container.empty();this.$innerContainer=this._buildInnerContainer();this.$innerContainer.addClass("jPixie-transition-"+this.settings.transition);this.$slider=this.$innerContainer.find(".jPixie-slider");this.$pages=this.$innerContainer.find(".jPixie-pages");this.$container.append(this.$innerContainer)},_attachResizeHandler:function(){if(!this.resizeHandlerAttached&&this.controller.settings.autoResize){this.resizeHandlerAttached=true;p("View ("+this.id+") - Attaching resize handle");var q=this;this.$container.bind("resize",c(function(r){if(!q.controller.isRefreshing){if(q.settings.onResizeBegin){q.settings.onResizeBegin()}p("View ("+q.id+") - View container resize detected. Initiating refreshViews");q.controller.refresh(true).then(function(){if(q.settings.onResizeComplete){q.settings.onResizeComplete()}})}else{p("View ("+q.id+") - View container resize detected. IGNORED")}}))}},_detachResizeHandler:function(){if(this.resizeHandlerAttached&&this.controller.settings.autoResize){p("View ("+this.id+") - Detaching resize handle");this.$container.unbind("resize");this.resizeHandlerAttached=false}},_validateSettings:function(){if(typeof this.settings.container==="undefined"){a.error('jPixie - No container specified for view "'+this.id+'" in options');return false}return true},_clickHandler:function(q,r){this.controller.moveToItemId(a(r).attr("data-itemid"));q.preventDefault()},_refreshLayout:function(){var q=this._getCurrentLayout();if(q!==this.state.layout){this.state.layout=q;this.state.isDirty=true;return true}else{return false}},_refresh:function(){var S=this.state;var H=this.controller.model;var A=S.isDirty;S.isDirty=false;var L=S.selectedItemIndex;var P=H.selectedItemIndex;if(!A&&P==L){S.transitionParams=undefined;return}var R=this.settings;var E=this.viewType==="thumbs";var M=this._calculatePageNumber(S,L);var Q=this._calculatePageNumber(S,P);var F=P<L;var u;var v;var s=S.$selectedItem;var t=S.$selectedPage;if(!A&&Q==M){u=S.$cachedPhotos.get(P);if(E){s.removeClass("jPixie-selected");u.addClass("jPixie-selected")}S.selectedItemIndex=P;S.$selectedItem=u;S.transitionParams=undefined;return}else{if(A){if(this.controller.settings.onPageChanged){d(this.controller.instance,this.controller.settings.onPageChanged)()}this.$pages.empty();S.$cachedPages=new h();S.$cachedPhotos=new h();s=undefined;t=undefined}}var T=S.$cachedPages.length;var z=T>0;var B;v=S.$cachedPages.get(Q);var O={top:0,left:0};if(v){if(this.isAnimationSuspended){var r=this.$pages.children();var K=0;for(var C=0;C<r.length;C++){if(r[C]==v){break}K++}p("pageDOMIndex = "+K);O.top=layout.occupiedSize.height*K;O.left=layout.occupiedSize.width*K}}else{if(this.controller.settings.onRenderBegin){d(this.controller.instance,this.controller.settings.onRenderBegin)()}B=true;T++;layout=S.layout;switch(R.transition){case"updown":this.$slider.height(layout.occupiedSize.height);this.$pages.height((layout.occupiedSize.height*T)+layout.paddingSize.height);break;case"leftright":this.$slider.width(layout.occupiedSize.width);this.$pages.width((layout.occupiedSize.width*T)+layout.paddingSize.width);break;default:break}var N=this._calculatePageIndexRange(S,P);v=this._buildPage(S,N.startIndex,N.endIndex,R);v.hide();if(Q==1||z==false){this.$pages.prepend(v)}else{var y=Q-1;var q=S.$cachedPages.get(y);var x=0;var D=false;if(!q){a.each(S.$cachedPages.data,function(W,V){if(parseInt(W,10)>=Q){D=true;return false}q=V;x++});if(!D){x--}}if(q){q.after(v);O.top=layout.occupiedSize.height*(x+1);O.left=layout.occupiedSize.width*(x+1);p("beforePageIndex = "+x)}else{this.$pages.prepend(v)}}S.$cachedPages.put(Q,v);if(this.controller.settings.onRenderComplete){d(v,this.controller.settings.onRenderComplete)()}}u=S.$cachedPhotos.get(P);if(E){if(s){s.removeClass("jPixie-selected")}u.addClass("jPixie-selected")}var w=R.onPageChangeTransitionSimultaneous;var U={isReverse:F,isSimultaneous:w};switch(R.transition){case"updown":U.$slideTo=v;S.$elementToTransitionOut=undefined;S.$elementToTransitionIn=this.$slider;if(this.isAnimationSuspended){this.$slider.scrollTop(O.top)}v.show();if(!this.isAnimationSuspended&&B&&F&&t){this.$slider.scrollTop(t.position().top)}break;case"leftright":U.$slideTo=v;S.$elementToTransitionOut=undefined;S.$elementToTransitionIn=this.$slider;if(this.isAnimationSuspended){p("scrollToPosition.left = "+O.left);this.$slider.scrollLeft(O.left)}v.show();if(!this.isAnimationSuspended&&B&&F&&t){this.$slider.scrollLeft(t.position().left)}break;case"fade":v.hide();S.$elementToTransitionOut=t;S.$elementToTransitionIn=v;this.$slider.height(S.layout.occupiedSize.height);break;case"vscroll":case"hscroll":case"custom":default:U=undefined;S.$elementToTransitionOut=undefined;S.$elementToTransitionIn=undefined;v.show();break}S.transitionParams=U;S.$selectedItem=u;S.$selectedPage=v;S.$previousItem=s;S.$previousPage=t;S.selectedItemIndex=P;S.selectedPageNumber=Q;v.width(S.layout.occupiedSize.width);var G=Math.ceil(H.totalCount/S.layout.perPage);if(Q>=G){var I=H.totalCount%S.layout.perPage;var J=Math.ceil(I/S.layout.columns);v.height(S.layout.occupiedRowHeight*J)}else{v.height(S.layout.occupiedSize.height)}},transition:function(){var q=a.Deferred();if(!this.settings.isVisible||this.settings.isSuspended){q.resolve();return q.promise()}var u=this.state;if(u.transitionParams){var t=this.settings;var r=this.viewType==="thumbs";var w=a.Deferred();if(!this.isAnimationSuspended&&u.$elementToTransitionOut&&t.onPageChangeTransitionOut){if(u.transitionParams.areTransitionsSimultaneous){u.animatingOut=u.$elementToTransitionOut;d(u.$elementToTransitionOut,t.onPageChangeTransitionOut)(u.transitionParams);w.resolve()}else{u.animatingOut=u.$elementToTransitionOut;d(u.$elementToTransitionOut,t.onPageChangeTransitionOut)(u.transitionParams,function(){w.resolve()})}}else{w.resolve()}var s=this;var v=a.Deferred();a.when(w).then(function(){if(u.animatingOut){u.animatingOut=undefined}if(!s.isAnimationSuspended&&t.onPageChangeTransitionIn){u.animatingIn=u.$elementToTransitionIn;d(u.$elementToTransitionIn,t.onPageChangeTransitionIn)(u.transitionParams,function(){v.resolve()})}else{v.resolve()}});a.when(v).then(function(){if(u.animatingIn){u.animatingIn=undefined}if(u.$selectedPage){u.$selectedPage.show()}q.resolve()})}else{q.resolve()}return q.promise()},_calculatePageNumber:function(r,q){return Math.floor(q/r.layout.perPage)+1},_calculatePageIndexRange:function(u,r){var s=u.layout.perPage;var t=Math.floor(r/s)*s;var q=t+s-1;return{startIndex:t,endIndex:q}},_getCurrentLayout:function(){var G=this.settings;var z=G.isVisible;if(!z){this.$container.show()}var s=this._getSizeFromElement(this.$container);if(!z){this.$container.hide()}p("View ("+this.id+") - Available Dimensions width="+s.width+" height="+s.height);var C=this.state.layout;if(C.availableSize.width==s.width&&C.availableSize.height==s.height){p("View ("+this.id+") - Dimensions have NOT CHANGED");return C}var r=a('<ul id="jPixie-measure" class="jPixie-page" style="position:absolute;" />');var q=this._buildPhotosListItem({layout:{photoInfo:{imageSize:{width:100,height:100},containerSize:{width:100,height:100}}}},{itemId:0,width:100,height:100,sizes:[{url:"data:image/gif;base64,R0lGODlhZABkAPcAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAZABkAAAIoQABCBxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MWHBAADs=",width:100,height:100,length:100}]},"jPixie-item",{imageFormat:"square",imageSize:100});r.append(q);a(this.$pages).prepend(r);var B=(q.outerWidth(true)-100);var A=(q.outerHeight(true)-100);r.remove();var w=this.viewType==="photo";var H=this.options.imageSize;var t=this.options.columns;var F=this.options.rows;var u=function(){if(isNaN(t)){switch(t){case"auto":if(isNaN(H)){if((s.width/240)>=4){t=Math.ceil(s.width/240)}else{if((s.width/160)>=4){t=Math.floor(s.width/160)}else{if((s.width/120)>=4){t=Math.floor(s.width/120)}else{if((s.width/80)>=4){t=Math.floor(s.width/80)}else{if((s.width/64)>=4){t=Math.floor(s.width/64)}else{if((s.width/48)>=4){t=Math.floor(s.width/48)}else{if((s.width/32)>=4){t=Math.floor(s.width/32)}else{if((s.width/24)>=4){t=Math.floor(s.width/24)}else{t=1}}}}}}}}}else{t=Math.floor(s.width/(parseInt(H,10)+B))}break;default:a.error("Configuration Error: unknown value given for columns: "+t);break}}return parseInt(t,10)};var y=false;var v=function(){if(isNaN(H)){switch(H){case"auto":y=true;var O=B*t;H=Math.floor((s.width-O)/t);if(w){var N,J;if(s.width>s.height){J=s.width;N=s.height}else{J=s.height;N=s.width}var I=N/J;var K=0.6666666;if(I>=K){H=J}else{H=Math.floor(N/K)}}var L=parseInt(G.imageMaxSize,10);var M=parseInt(G.imageMinSize,10);if(H<M){H=M;if(!w){t=Math.floor(s.width/(H+B))}}else{if(H>L){H=L;if(!w){t=Math.floor(s.width/(H+B))}}}break;default:a.error("Configuration Error: unknown value given for size: "+H);break}}return parseInt(H,10)};t=u();H=v();var x=false;if(isNaN(F)){switch(F){case"auto":F=Math.floor(s.height/(H+A));if(F<1){F=1}break;default:a.error("Configuration Error: unknown value given for rows: "+F);break}}else{x=true;F=parseInt(F,10)}C=new n();C.columns=t;C.rows=F;C.perPage=F*t;if(w){C.photoInfo.imageLength=H;C.photoInfo.containerSize.width=s.width-B;C.photoInfo.containerSize.height=s.height-A;C.occupiedSize=s}else{C.photoInfo.imageLength=H;C.photoInfo.containerSize=new l(H,H);C.occupiedSize.width=t*(H+B);C.occupiedSize.height=F*(H+A);C.occupiedRowHeight=H+A}C.availableSize=s;C.paddingSize.width=C.availableSize.width-C.occupiedSize.width;C.paddingSize.height=C.availableSize.height-C.occupiedSize.height;if("center"===this.settings.align){var D=this._calculatePadding(C.availableSize.width,C.availableSize.height,C.occupiedSize.width,C.occupiedSize.height);var E=D.top+"px "+D.right+"px "+D.bottom+"px "+D.left+"px";this.$innerContainer.css("padding",E)}return C},_getSizeFromElement:function(u){if(typeof this.availableArea==="undefined"){var t,s;var r=a(u);var q=r;var v=0;while(q){if(!t){t=q.width()}if(!s){s=q.height()}if(!t||!s){q=q.parent()}else{if(q!==r){q.children().filter(":visible").each(function(){var w=a(this).css("position");if(w!="static"&&w!="absolute"){v+=a(this).outerHeight(true)}})}break}}s-=v;this.availableArea=new l(t,s)}return this.availableArea},_buildInnerContainer:function(){var q=[];q[q.length]='<div class="jPixie-container jPixie-';q[q.length]=this.viewType;if(this.settings.className){q[q.length]=" ";q[q.length]=this.settings.className}q[q.length]='">';q[q.length]='<div class="jPixie-slider">';if(this.settings.transition==="iscroll"){q[q.length]='<div class="jPixie-slider-scoll">';q[q.length]='<div class="jPixie-pulldown" />'}q[q.length]='<div class="jPixie-pages" />';if(this.settings.transition==="iscroll"){q[q.length]='<div class="jPixie-pullup" />';q[q.length]="</div>"}q[q.length]="</div>";q[q.length]="</div>";return a(q.join(""))},_buildPage:function(u,t,r,s){var q=a('<ul class="jPixie-page" />');a.each(this._buildPhotosList(u,t,r,s),function(){q.append(this)});return q},_buildPhotosList:function(C,B,t,A){var y=this.controller.model;var w=y.items;var s=C.layout.columns;var x=[];var z=y.selectedItemIndex;if(t>=y.totalCount){t=y.totalCount-1}for(var u=B;u<=t;u++){var v=w.get(u);var r=(u%s)+1;if(r==1){className="jPixie-item jPixie-first"}else{if(r==s){className="jPixie-item jPixie-last"}else{className="jPixie-item"}}if(A.itemClassName){className=" "+A.itemClassName}if(u==z&&this.viewType==="thumbs"){className+=" jPixie-selected"}var q=this._buildPhotosListItem(C,v,className,A);C.$cachedPhotos.put(u,q);x.push(q)}return x},_buildPhotosListItem:function(v,s,r,u){var t=this;var q=a("<li />").attr("id",this.viewId+"-"+s.itemId).attr("data-itemid",s.itemId).addClass(r).append(a(this._buildItem(v,s,u)));if(this.viewType=="thumbs"||u.onItemClick){q.click(function(w){if(u.onItemClick){var x=a(this).attr("data-itemid");u.onItemClick(w,this,x)}else{t._clickHandler(w,this)}})}q.hover(function(w){a(this).addClass("jPixie-hover");if(u.onItemHoverIn){d(this,u.onItemHoverIn)(w)}},function(w){a(this).removeClass("jPixie-hover");if(u.onItemHoverOut){d(this,u.onItemHoverOut)(w)}});if(u.onItemCreated){d(q,u.onItemCreated)(s)}return q},_buildItem:function(v,t,u){var s=[];s[s.length]=this._buildItemImage(v,t,u);if(u.descriptionVisible){var r=this._buildItemDescription(v,t,u);if(typeof u.descriptionContainer==="string"){var q=a(u.descriptionContainer);if(q){q.append(r)}}else{s[s.length]=r}}return s.join("")},_buildItemImage:function(P,D,M){var F=P.layout.photoInfo;var G=F.imageLength;var N=this._findActualOrNextSizeUpFromItem(G,M.imageFormat,D);var x=this.settings.titleVisible;var z=x&&typeof M.titleContainer==="string";var y=x&&!z&&M.titlePosition=="after";var A=x||M.attributionVisible;var C=M.imageFormat=="square";var O=N.url;if(C&&N.width!=N.height){N.width=N.length;N.height=N.length}var B=[];var u=F.containerSize.width;var t=F.containerSize.height;var L=u/N.width;var K=t/N.height;var H=L<K?L:K;var J=Math.floor(N.width*H);var I=Math.floor(N.height*H);var w=false;if(!C&&M.imageAlign=="center"){var E=this._calculatePadding(u,t,J,I);if(E.hasPadding){w=true;B[B.length]='<div style="padding:';B[B.length]=E.top;B[B.length]="px ";B[B.length]=E.right;B[B.length]="px ";B[B.length]=E.bottom;B[B.length]="px ";B[B.length]=E.left;B[B.length]='px;">'}}if(A){B[B.length]='<div class="jPixie-item-wrapper">'}if(x&&z){var r=a(M.titleContainer);if(r){r.empty();r.append(this._buildItemTitle(P,D,M))}}else{if(x&&!y){B[B.length]=this._buildItemTitle(P,D,M)}}if(M.imageLink){B[B.length]='<a class="jPixie-item-image-link" href="'+D.url+'"';if(M.imageLinkExternal){B[B.length]=' rel="external"'}if(M.imageLinkTarget){B[B.length]=' target="'+M.imageLinkTarget+'"'}B[B.length]=">"}var v=C&&M.cropSquare&&((N.width-J)<(N.width*M.cropSquareThreshold));if(v){B[B.length]="<div"}else{B[B.length]="<img"}B[B.length]=' class="jPixie-item-image';if(M.imageClassName){B[B.length]=" "+M.imageClassName}B[B.length]='" style="width:';B[B.length]=J;B[B.length]="px;height:";B[B.length]=I;B[B.length]="px;";if(v){B[B.length]="background-color:#"+D.color+";background-image:url('"+O+"');\"></div>"}else{B[B.length]='" src="';B[B.length]=O;B[B.length]='"';if(D.title){B[B.length]=' alt="';B[B.length]=D.title;B[B.length]='"'}B[B.length]=" />"}if(M.imageLink){B[B.length]="</a>"}if(y){B[B.length]=this._buildItemTitle(P,D,M)}if(M.attributionVisible){var s=this._buildItemAttribution(P,D,M);if(typeof M.attributionContainer==="string"){var q=a(M.attributionContainer);if(q){q.empty();q.append(s)}}else{B[B.length]=s}}if(A){B[B.length]="</div>"}if(w){B[B.length]="</div>"}return B.join("")},_calculatePadding:function(t,s,r,q){if(t==r&&s==q){return{top:0,bottom:0,left:0,right:0,hasPadding:false}}else{var x=Math.floor((s-q)/2);if(x<0){x=0}var u=s-q-x;if(u<0){u=0}var v=Math.floor((t-r)/2);if(v<0){v=0}var w=t-r-v;if(w<0){w=0}return{top:x,bottom:u,left:v,right:w,hasPadding:x!=0||w!=0||u!=0||v!=0}}},_buildItemTitle:function(t,r,s){var q=[];q[q.length]='<div class="jPixie-item-title';if(s.titleClassName){q[q.length]=" "+s.titleClassName}q[q.length]='">';if(s.titleLink){q[q.length]='<a href="'+r.url+'"';if(s.titleLinkExternal){q[q.length]=' rel="external"'}if(s.titleLinkTarget){q[q.length]=' target="'+s.titleLinkTarget+'"'}q[q.length]=">"}q[q.length]=r.title;if(s.titleLink){q[q.length]="</a>"}q[q.length]="</div>";return q.join("")},_buildItemAttribution:function(t,r,s){var q=[];q[q.length]='<div class="jPixie-item-attribution';if(s.attributionClassName){q[q.length]=" "+s.attributionClassName}q[q.length]='">';q[q.length]="photo by ";if(s.attributionLink){q[q.length]='<a href="';if(s.attributionLinkType==="photo"){q[q.length]=r.url}else{q[q.length]=r.owner.url}q[q.length]='"';if(s.attributionLinkExternal){q[q.length]=' rel="external"'}if(s.attributionLinkTarget){q[q.length]=' target="'+s.attributionLinkTarget+'"'}q[q.length]=">"}switch(s.attributionLinkFormat){case"username":q[q.length]=r.owner.username;break;case"displayName":default:q[q.length]=r.owner.displayName;break}if(s.attributionLink){q[q.length]="</a>"}q[q.length]="</div>";return q.join("")},_buildItemDescription:function(t,r,s){var q=[];q[q.length]='<div class="jPixie-item-description';if(s.descriptionClassName){q[q.length]=" "+s.descriptionClassName}q[q.length]='">';q[q.length]=r.description;q[q.length]="</div>";return q.join("")},_findActualOrNextSizeUpFromItem:function(w,q,t){var x=t.sizes;var s=(q=="square");for(var r=0;r<x.length;r++){if(x[r].length>=w){if((r+1)<x.length){var u=x[r];var v=x[r+1];if(v.length>u.length){return u}else{if(s){if(u.width==u.height){return u}else{return v}}else{if(u.width==u.height){return v}else{return u}}}}else{return x[r]}}}return x[x.length-1]},_findActualOrNextSizeUpFromSupported:function(t,q){var r=q[q.length-1];for(var s=0;s<q.length;s++){if(q[s]>=t){r=q[s];break}}return r}};a.fn.jPixieGallery=function(r){this.options=r;a.extend(this,a.jPixie);var q=new g(this,r);a.extend(this,{controller:q,createPhoto:function(s){q.createView("photo",a.extend(true,{},f.defaults.photo,s));return this},createThumbs:function(s){q.createView("thumbs",a.extend(true,{},f.defaults.thumbs,s));return this},setDatasource:function(s){return q.setDatasource(s)},refresh:function(s){return q.refresh(s)},invalidate:function(){return q.invalidate()},suspend:function(s){q.suspendView(s);return this},resume:function(s){return q.resumeView(s)},show:function(s){return q.showView(s)},hide:function(s){q.hideView(s);return this},toggle:function(s){q.toggleView(s);return this},moveToItemId:function(s){return q.moveToItemId(s)},moveToPreviousItem:function(){return q.moveToPreviousItem()},moveToNextItem:function(){return q.moveToNextItem()},moveToPreviousPage:function(s){return q.moveToPreviousPage(s)},moveToNextPage:function(s){return q.moveToNextPage(s)},moveToPage:function(t,s){return q.moveToPage(t,s)},moveToFirst:function(){return this.moveTo(0)},moveTo:function(s){return q.moveTo(s)},isLoaded:function(){return q.isLoaded()},hasNextItem:function(){return q.hasNextItem()},hasPreviousItem:function(){return q.hasPreviousItem()},hasNextPage:function(s){return q.hasNextPage(s)},hasPreviousPage:function(s){return q.hasPreviousPage(s)},currentItemIndex:function(){return q.currentItemIndex()},currentPage:function(s){return q.currentPage(s)},totalCount:function(){return q.totalCount()},totalPages:function(s){return q.totalPages(s)}});return this}})(jQuery);(function(a){a.fn.waitForImages=function(c,b,d){if(typeof c==="object"){b=c.each;d=c.waitForAll;c=c.finished}c=c||function(){};b=b||function(){};d=!!d;if(!a.isFunction(c)||!a.isFunction(b)){throw new TypeError("An invalid callback was supplied.")}return this.each(function(){var j=a(this),e=[];if(d){var h=a.fn.waitForImages.hasImgProperties||["backgroundImage","listStyleImage","borderImage","borderCornerImage"];var i=/url\(['"]?(.*?)\1\)/g;j.find("*").filter(function(){var l=a(this);if(l.is("img")){e.push({src:l.attr("src"),element:l[0]})}a.each(h,function(m,o){var p=l.css(o);if(!p){return true}var n;while(n=i.exec(p)){e.push({src:n[1],element:l[0]})}})})}else{j.find("img").each(function(){e.push({src:this.src,element:this})})}var f=e.length,g=0;if(f==0){c.call(j[0])}a.each(e,function(l,n){var m=new Image;m.onload=function(){g++;b.call(n.element,g,f);if(g==f){c.call(j[0]);return false}};m.src=n.src})})}})(jQuery);(function($,l,j){var a=$([]),b=$.resize=$.extend($.resize,{}),i,g="setTimeout",f="resize",d=f+"-special-event",e="delay",h="throttleWindow";b[e]=250;b[h]=true;$.event.special[f]={setup:function(){if(!b[h]&&this[g]){return false}var m=$(this);a=a.add(m);$.data(this,d,{w:m.width(),h:m.height()});if(a.length===1){c()}},teardown:function(){if(!b[h]&&this[g]){return false}var m=$(this);a=a.not(m);m.removeData(d);if(!a.length){clearTimeout(i)}},add:function(m){if(!b[h]&&this[g]){return false}var o;function n(q,t,s){var r=$(this),p=$.data(this,d);if(p==j){return}p.w=t!==j?t:r.width();p.h=s!==j?s:r.height();o.apply(this,arguments)}if($.isFunction(m)){o=m;return n}else{o=m.handler;m.handler=n}}};function c(){i=l[g](function(){a.each(function(){var n=$(this),p=n.width(),o=n.height(),m=$.data(this,d);if(p!==m.w||o!==m.h){n.trigger(f,[m.w=p,m.h=o])}});c()},b[e])}})(jQuery,this);jQuery.easing.jswing=jQuery.easing.swing;jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(h,g,a,e,f){return jQuery.easing[jQuery.easing.def](h,g,a,e,f)},easeInQuad:function(h,g,a,e,f){return e*(g/=f)*g+a},easeOutQuad:function(h,g,a,e,f){return -e*(g/=f)*(g-2)+a},easeInOutQuad:function(h,g,a,e,f){if((g/=f/2)<1){return e/2*g*g+a}return -e/2*((--g)*(g-2)-1)+a},easeInCubic:function(h,g,a,e,f){return e*(g/=f)*g*g+a},easeOutCubic:function(h,g,a,e,f){return e*((g=g/f-1)*g*g+1)+a},easeInOutCubic:function(h,g,a,e,f){if((g/=f/2)<1){return e/2*g*g*g+a}return e/2*((g-=2)*g*g+2)+a},easeInQuart:function(h,g,a,e,f){return e*(g/=f)*g*g*g+a},easeOutQuart:function(h,g,a,e,f){return -e*((g=g/f-1)*g*g*g-1)+a},easeInOutQuart:function(h,g,a,e,f){if((g/=f/2)<1){return e/2*g*g*g*g+a}return -e/2*((g-=2)*g*g*g-2)+a},easeInQuint:function(h,g,a,e,f){return e*(g/=f)*g*g*g*g+a},easeOutQuint:function(h,g,a,e,f){return e*((g=g/f-1)*g*g*g*g+1)+a},easeInOutQuint:function(h,g,a,e,f){if((g/=f/2)<1){return e/2*g*g*g*g*g+a}return e/2*((g-=2)*g*g*g*g+2)+a},easeInSine:function(h,g,a,e,f){return -e*Math.cos(g/f*(Math.PI/2))+e+a},easeOutSine:function(h,g,a,e,f){return e*Math.sin(g/f*(Math.PI/2))+a},easeInOutSine:function(h,g,a,e,f){return -e/2*(Math.cos(Math.PI*g/f)-1)+a},easeInExpo:function(h,g,a,e,f){return(g==0)?a:e*Math.pow(2,10*(g/f-1))+a},easeOutExpo:function(h,g,a,e,f){return(g==f)?a+e:e*(-Math.pow(2,-10*g/f)+1)+a},easeInOutExpo:function(h,g,a,e,f){if(g==0){return a}if(g==f){return a+e}if((g/=f/2)<1){return e/2*Math.pow(2,10*(g-1))+a}return e/2*(-Math.pow(2,-10*--g)+2)+a},easeInCirc:function(h,g,a,e,f){return -e*(Math.sqrt(1-(g/=f)*g)-1)+a},easeOutCirc:function(h,g,a,e,f){return e*Math.sqrt(1-(g=g/f-1)*g)+a},easeInOutCirc:function(h,g,a,e,f){if((g/=f/2)<1){return -e/2*(Math.sqrt(1-g*g)-1)+a}return e/2*(Math.sqrt(1-(g-=2)*g)+1)+a},easeInElastic:function(m,l,f,g,h){var j=1.70158;var i=0;var e=g;if(l==0){return f}if((l/=h)==1){return f+g}if(!i){i=h*0.3}if(e<Math.abs(g)){e=g;var j=i/4}else{var j=i/(2*Math.PI)*Math.asin(g/e)}return -(e*Math.pow(2,10*(l-=1))*Math.sin((l*h-j)*(2*Math.PI)/i))+f},easeOutElastic:function(m,l,f,g,h){var j=1.70158;var i=0;var e=g;if(l==0){return f}if((l/=h)==1){return f+g}if(!i){i=h*0.3}if(e<Math.abs(g)){e=g;var j=i/4}else{var j=i/(2*Math.PI)*Math.asin(g/e)}return e*Math.pow(2,-10*l)*Math.sin((l*h-j)*(2*Math.PI)/i)+g+f},easeInOutElastic:function(m,l,f,g,h){var j=1.70158;var i=0;var e=g;if(l==0){return f}if((l/=h/2)==2){return f+g}if(!i){i=h*(0.3*1.5)}if(e<Math.abs(g)){e=g;var j=i/4}else{var j=i/(2*Math.PI)*Math.asin(g/e)}if(l<1){return -0.5*(e*Math.pow(2,10*(l-=1))*Math.sin((l*h-j)*(2*Math.PI)/i))+f}return e*Math.pow(2,-10*(l-=1))*Math.sin((l*h-j)*(2*Math.PI)/i)*0.5+g+f},easeInBack:function(i,h,a,e,f,g){if(g==undefined){g=1.70158}return e*(h/=f)*h*((g+1)*h-g)+a},easeOutBack:function(i,h,a,e,f,g){if(g==undefined){g=1.70158}return e*((h=h/f-1)*h*((g+1)*h+g)+1)+a},easeInOutBack:function(i,h,a,e,f,g){if(g==undefined){g=1.70158}if((h/=f/2)<1){return e/2*(h*h*(((g*=(1.525))+1)*h-g))+a}return e/2*((h-=2)*h*(((g*=(1.525))+1)*h+g)+2)+a},easeInBounce:function(h,g,a,e,f){return e-jQuery.easing.easeOutBounce(h,f-g,0,e,f)+a},easeOutBounce:function(h,g,a,e,f){if((g/=f)<(1/2.75)){return e*(7.5625*g*g)+a}else{if(g<(2/2.75)){return e*(7.5625*(g-=(1.5/2.75))*g+0.75)+a}else{if(g<(2.5/2.75)){return e*(7.5625*(g-=(2.25/2.75))*g+0.9375)+a}else{return e*(7.5625*(g-=(2.625/2.75))*g+0.984375)+a}}}},easeInOutBounce:function(h,g,a,e,f){if(g<f/2){return jQuery.easing.easeInBounce(h,g*2,0,e,f)*0.5+a}return jQuery.easing.easeOutBounce(h,g*2-f,0,e,f)*0.5+e*0.5+a}});(function(a){if("undefined"===typeof a.jPixie){a.jPixie={}}function c(e,d){return function(){return d.apply(e,arguments)}}var b={currentPage:1,totalPages:0,edgeButtonCount:2,middleButtonCount:5,showSinglePage:false,showFirst:true,showPrevious:true,showEllipses:true,showNext:true,showLast:true,showPageNumbers:true,firstLabel:"|&lt;",previousLabel:"&lt;",ellipsesLabel:"&#0133;",nextLabel:"&gt;",lastLabel:"&gt;|",onPageClicked:undefined,onFirstClicked:undefined,onPreviousClicked:undefined,onNextClicked:undefined,onLastClicked:undefined,};a.fn.jPixiePagination=function(d){this.options=d;this.settings=a.extend(true,{},b,d);a.extend(this,{currentPage:0,init:function(){},refresh:function(){var e=this.settings;if(e.totalPages==0||e.currentPage==0||(e.totalPages==1&&!e.showSinglePage)||e.currentPage==this.currentPage){return}this.empty().append(this.render())},setCurrentPage:function(e){if(e!=undefined){this.settings.currentPage=e}},setTotalPages:function(e){if(e!=undefined){this.settings.totalPages=e}},render:function(){var r=this.settings;var l=r.currentPage;var t=r.totalPages;var m=r.edgeButtonCount;var n=r.middleButtonCount%2>0?r.middleButtonCount:r.middleButtonCount+1;var o=(n-1)/2;var f=a('<div class="jpixie-pagination"></div>');var g=a('<ul class="jpixie-pagination-left"></ul>');var h=a('<ul class="jpixie-pagination-middle"></ul>');var i=a('<ul class="jpixie-pagination-right"></ul>');if(r.showFirst){g.append(this.renderButton({pageNumber:1,label:r.firstLabel,isLink:l!=1,css:l==1?{visibility:"hidden"}:undefined,onClick:r.onFirstClicked?r.onFirstClicked:r.onPageClicked}))}if(r.showPrevious){g.append(this.renderButton({pageNumber:l-1,label:r.previousLabel,isLink:l!=1,css:l==1?{visibility:"hidden"}:undefined,onClick:r.onPreviousClicked?r.onPreviousClicked:r.onPageClicked}))}if(r.showNext&&l!=t){i.append(this.renderButton({pageNumber:l+1,label:r.nextLabel,isLink:l!=t,css:l==t?{visibility:"hidden"}:undefined,onClick:r.onNextClicked?r.onNextClicked:r.onPageClicked}))}if(r.showLast&&l!=t){i.append(this.renderButton({pageNumber:t,label:r.lastLabel,isLink:l!=t,css:l==t?{visibility:"hidden"}:undefined,onClick:r.onLastClicked?r.onLastClicked:r.onPageClicked}))}if(r.showPageNumbers){var s=0;var e;if(l>m){s=0;e=g}else{s=1;e=h}var j=0;var q=1;while(q<=t){h.append(this.renderButton({pageNumber:q,label:q,isLink:q!=l,onClick:r.onPageClicked}));j++;switch(s){case 0:if(j>=m){s++;j=0;var p=l-o;if(p>q+2){h.append(this.renderEllipses());q=p}else{q++}}else{q++}break;case 1:if(j>=n){s++;j=0;var p=t-m+1;if(p>q+2){h.append(this.renderEllipses());q=p}else{q++}}else{q++}break;case 2:q++;break}}}f.append(g).append(i).append(h);return f},renderEllipses:function(){return a('<li class="ellipses"><span>'+this.settings.ellipsesLabel+"</span></li>")},renderButton:function(g){var f=a("<li></li>");if(g.css){f.css(g.css)}var e;if(g.isLink){e=a('<a href="#">'+g.label+"</a>");var h=this;e.click(function(i){i.preventDefault();h.settings.currentPage=g.pageNumber;h.refresh();if(g.onClick){c(h,g.onClick)(g.pageNumber)}})}else{e=a("<span>"+g.label+"</span>")}f.append(e);return f}});this.init();return this}})(jQuery);
