(function(a){document.write("<style type='text/css'>.noscript{display:none}</style>");var u="galleriffic-1.0",k=0,h=[],w=[],c,b,e,d=false,r=false,l=false;function j(a){if(!a)return -1;a=a.replace(/^.*#/,"");if(isNaN(a))return -1;return +a}function n(){var a=location.hash;return j(a)}function o(a){h.push(a);k+=a.data.length}function m(b){for(i=0;i<h.length;i++){var a=h[i];if(b<a.data.length+a.offset)return a}return 0}function t(a,b){return b-a.offset}function f(e,a,d){a.pause();if(!a.settings.enableHistory){var c=j(d.href);if(c>=0){var b=t(a,c);b>=0&&a.goto(b)}e.preventDefault()}}function g(){var b=n();if(b<0)return;var a=m(b);if(!a)return;var c=b-a.offset;a.goto(c)}function q(){if(l)return;l=true;var f=location.hash;c=f;if(a.browser.msie){if(c=="")c="#"}else if(a.browser.safari){b=[];b.length=history.length;e=[];d=true}setInterval(function(){p()},100)}function p(){if(a.browser.safari){if(!r){var f=history.length-b.length;if(f){d=false;if(f<0)for(var h=0;h<Math.abs(f);h++)e.unshift(b.pop());else for(var h=0;h<f;h++)b.push(e.shift());var j=b[b.length-1];if(j!=undefined){c=location.hash;g()}}else if(b[b.length-1]==undefined&&!d){g();d=true}}}else{var i=location.hash;if(i!=c){c=i;g()}}}var s={delay:3e3,numThumbs:20,preloadAhead:40,enableTopPager:false,enableBottomPager:true,imageContainerSel:"",captionContainerSel:"",controlsContainerSel:"",loadingContainerSel:"",renderSSControls:true,renderNavControls:true,playLinkText:"Play",pauseLinkText:"Pause",prevLinkText:"Previous",nextLinkText:"Next",nextPageLinkText:"Next &rsaquo;",prevPageLinkText:"&lsaquo; Prev",enableHistory:false,autoStart:false,onChange:undefined,onTransitionOut:undefined,onTransitionIn:undefined,onPageTransitionOut:undefined,onPageTransitionIn:undefined};a.fn.galleriffic=function(e,h){a.extend(this,{ver:function(){return u},initializeThumbs:function(){this.data=[];var b=this;this.$thumbsContainer.find("ul.thumbs > li").each(function(g){var e=a(this),c=e.find("a.thumb"),d=b.offset+g;b.data.push({title:c.attr("title"),slideUrl:c.attr("href"),caption:e.find(".caption").remove(),hash:d});c.attr("rel","history");c.attr("href","#"+d);c.click(function(a){f(a,b,this)})});return this},isPreloadComplete:false,preloadInit:function(){if(this.settings.preloadAhead==0)return this;this.preloadStartIndex=this.currentIndex;var a=this.getNextIndex(this.preloadStartIndex);return this.preloadRecursive(this.preloadStartIndex,a)},preloadRelocate:function(a){this.preloadStartIndex=a;return this},preloadRecursive:function(b,a){if(b!=this.preloadStartIndex){var g=this.getNextIndex(this.preloadStartIndex);return this.preloadRecursive(this.preloadStartIndex,g)}var f=this,d=a-b;if(d<0)d=this.data.length-1-b+a;if(this.settings.preloadAhead>=0&&d>this.settings.preloadAhead){setTimeout(function(){f.preloadRecursive(b,a)},500);return this}var c=this.data[a];if(!c)return this;if(c.image)return this.preloadNext(b,a);var e=new Image;e.onload=function(){c.image=this;f.preloadNext(b,a)};e.alt=c.title;e.src=c.slideUrl;return this},preloadNext:function(a,c){var b=this.getNextIndex(c);if(b==a)this.isPreloadComplete=true;else{var d=this;setTimeout(function(){d.preloadRecursive(a,b)},100)}return this},getNextIndex:function(b){var a=b+1;if(a>=this.data.length)a=0;return a},getPrevIndex:function(b){var a=b-1;if(a<0)a=this.data.length-1;return a},pause:function(){this.interval&&this.toggleSlideshow();return this},play:function(){!this.interval&&this.toggleSlideshow();return this},toggleSlideshow:function(){if(this.interval){clearInterval(this.interval);this.interval=0;this.$controlsContainer&&this.$controlsContainer.find("div.ss-controls a").removeClass().addClass("play").attr("title",this.settings.playLinkText).attr("href","#play").html(this.settings.playLinkText)}else{this.ssAdvance();var a=this;this.interval=setInterval(function(){a.ssAdvance()},this.settings.delay);this.$controlsContainer&&this.$controlsContainer.find("div.ss-controls a").removeClass().addClass("pause").attr("title",this.settings.pauseLinkText).attr("href","#pause").html(this.settings.pauseLinkText)}return this},ssAdvance:function(){var a=this.getNextIndex(this.currentIndex),b=this.data[a].hash;if(this.settings.enableHistory)location.href="#"+b;else this.goto(a);return this},"goto":function(a){if(a<0)a=0;else if(a>=this.data.length)a=this.data.length-1;this.settings.onChange&&this.settings.onChange(this.currentIndex,a);this.currentIndex=a;this.preloadRelocate(a);return this.refresh()},refresh:function(){var b=this.data[this.currentIndex];if(!b)return this;var e=true,a=this,d=function(){e=false;a.$controlsContainer&&a.$controlsContainer.find("div.nav-controls a.prev").attr("href","#"+a.data[a.getPrevIndex(a.currentIndex)].hash).end().find("div.nav-controls a.next").attr("href","#"+a.data[a.getNextIndex(a.currentIndex)].hash);var b=a.data[a.currentIndex];a.$captionContainer&&a.$captionContainer.empty().append(b.caption);if(b.image)a.buildImage(b.image);else a.$loadingContainer&&a.$loadingContainer.show()};if(this.settings.onTransitionOut)this.settings.onTransitionOut(d);else{this.$transitionContainers.hide();d()}if(!b.image){var c=new Image;c.onload=function(){b.image=this;!e&&a.buildImage(b.image)};c.alt=b.title;c.src=b.slideUrl}this.relocatePreload=true;return this.syncThumbs()},buildImage:function(a){if(this.$imageContainer){this.$imageContainer.empty();var c=this,b=this.getNextIndex(this.currentIndex);this.$loadingContainer&&this.$loadingContainer.hide();this.$imageContainer.append('<span class="image-wrapper"><a class="advance-link" rel="history" href="#'+this.data[b].hash+'" title="'+a.alt+'"></a></span>').find("a").append(a).click(function(a){f(a,c,this)})}if(this.settings.onTransitionIn)this.settings.onTransitionIn();else this.$transitionContainers.show();return this},syncThumbs:function(){if(this.$thumbsContainer){var b=Math.floor(this.currentIndex/this.settings.numThumbs);if(b!=this.currentPage){this.currentPage=b;this.updateThumbs()}var a=this.$thumbsContainer.find("ul.thumbs").children();a.filter(".selected").removeClass("selected");a.eq(this.currentIndex).addClass("selected")}return this},updateThumbs:function(){var a=this,b=function(){a.rebuildThumbs();if(a.settings.onPageTransitionIn)a.settings.onPageTransitionIn();else a.$thumbsContainer.show()};if(this.settings.onPageTransitionOut)this.settings.onPageTransitionOut(b);else{this.$thumbsContainer.hide();b()}return this},rebuildThumbs:function(){if(this.currentPage<0)this.currentPage=0;var e=this.data.length>this.settings.numThumbs,c=this.$thumbsContainer.find("div.top");if(c.length==0)c=this.$thumbsContainer.prepend('<div class="top pagination"></div>').find("div.top");if(e&&this.settings.enableTopPager){c.empty();this.buildPager(c)}if(e&&this.settings.enableBottomPager){var b=this.$thumbsContainer.find("div.bottom");if(b.length==0)b=this.$thumbsContainer.append('<div class="bottom pagination"></div>').find("div.bottom");else b.empty();this.buildPager(b)}var f=this.currentPage*this.settings.numThumbs,d=f+this.settings.numThumbs-1;if(d>=this.data.length)d=this.data.length-1;var g=this.$thumbsContainer.find("ul.thumbs");g.find("li").each(function(c){var b=a(this);if(c>=f&&c<=d)b.show();else b.hide()});g.removeClass("noscript");return this},buildPager:function(a){var h=this,c=this.currentPage*this.settings.numThumbs;if(this.currentPage>0){var g=c-this.settings.numThumbs;a.append('<a rel="history" href="#'+this.data[g].hash+'" title="'+this.settings.prevPageLinkText+'">'+this.settings.prevPageLinkText+"</a>")}for(i=this.currentPage-3;i<=this.currentPage+3;i++){var b=i+1;if(i==this.currentPage)a.append('<span class="current">'+b+"</span>");else if(i>=0&&i<this.numPages){var e=i*this.settings.numThumbs;a.append('<a rel="history" href="#'+this.data[e].hash+'" title="'+b+'">'+b+"</a>")}}var d=c+this.settings.numThumbs;d<this.data.length&&a.append('<a rel="history" href="#'+this.data[d].hash+'" title="'+this.settings.nextPageLinkText+'">'+this.settings.nextPageLinkText+"</a>");a.find("a").click(function(a){f(a,h,this)});return this}});this.settings=a.extend({},s,h);this.interval&&clearInterval(this.interval);this.interval=0;if(this.settings.imageContainerSel)this.$imageContainer=a(this.settings.imageContainerSel);if(this.settings.captionContainerSel)this.$captionContainer=a(this.settings.captionContainerSel);if(this.settings.loadingContainerSel)this.$loadingContainer=a(this.settings.loadingContainerSel);this.$transitionContainers=a([]);if(this.$imageContainer)this.$transitionContainers=this.$transitionContainers.add(this.$imageContainer);if(this.$captionContainer)this.$transitionContainers=this.$transitionContainers.add(this.$captionContainer);this.offset=k;this.$thumbsContainer=a(e);this.initializeThumbs();o(this);this.numPages=Math.ceil(this.data.length/this.settings.numThumbs);this.currentPage=-1;this.currentIndex=0;var b=this;this.$loadingContainer&&this.$loadingContainer.hide();if(this.settings.controlsContainerSel){this.$controlsContainer=a(this.settings.controlsContainerSel).empty();if(this.settings.renderSSControls){if(this.settings.autoStart)this.$controlsContainer.append('<div class="ss-controls"><a href="#pause" class="pause" title="'+this.settings.pauseLinkText+'">'+this.settings.pauseLinkText+"</a></div>");else this.$controlsContainer.append('<div class="ss-controls"><a href="#play" class="play" title="'+this.settings.playLinkText+'">'+this.settings.playLinkText+"</a></div>");this.$controlsContainer.find("div.ss-controls a").click(function(a){b.toggleSlideshow();a.preventDefault();return false})}if(this.settings.renderNavControls)var j=this.$controlsContainer.append('<div class="nav-controls"><a class="prev" rel="history" title="'+this.settings.prevLinkText+'">'+this.settings.prevLinkText+'</a><a class="next" rel="history" title="'+this.settings.nextLinkText+'">'+this.settings.nextLinkText+"</a></div>").find("div.nav-controls a").click(function(a){f(a,b,this)})}q();var c=n(),d=c>=0?m(c):0,g=d&&this==d?c-this.offset:0;this.goto(g);this.settings.autoStart&&setTimeout(function(){b.play()},this.settings.delay);setTimeout(function(){b.preloadInit()},1e3);return this}})(jQuery)
