﻿
(function($){$.anythingSlider=function(el,options){var base=this,o;base.$el=$(el).addClass('anythingBase').wrap('<div class="anythingSlider"><div class="anythingWindow" /></div>');base.$el.data("AnythingSlider",base);base.init=function(){base.options=o=$.extend({},$.anythingSlider.defaults,options);base.initialized=false;if($.isFunction(o.onBeforeInitialize)){base.$el.bind('before_initialize',o.onBeforeInitialize);}
base.$el.trigger('before_initialize',base);base.$wrapper=base.$el.parent().closest('div.anythingSlider').addClass('anythingSlider-'+o.theme);base.$window=base.$el.closest('div.anythingWindow');base.win=window;base.$win=$(base.win);base.$controls=$('<div class="anythingControls"></div>').appendTo((o.appendControlsTo!==null&&$(o.appendControlsTo).length)?$(o.appendControlsTo):base.$wrapper);base.$startStop=$('<a href="#" class="start-stop"></a>');if(o.buildStartStop){base.$startStop.appendTo((o.appendStartStopTo!==null&&$(o.appendStartStopTo).length)?$(o.appendStartStopTo):base.$controls);}
base.$nav=$('<ul class="thumbNav" />').appendTo((o.appendNavigationTo!==null&&$(o.appendNavigationTo).length)?$(o.appendNavigationTo):base.$controls);base.flag=false;base.playing=o.autoPlay;base.slideshow=false;base.hovered=false;base.panelSize=[];base.currentPage=o.startPanel=parseInt(o.startPanel,10)||1;base.adj=(o.infiniteSlides)?0:1;base.width=base.$el.width();base.height=base.$el.height();base.outerPad=[base.$wrapper.innerWidth()-base.$wrapper.width(),base.$wrapper.innerHeight()-base.$wrapper.height()];if(o.playRtl){base.$wrapper.addClass('rtl');}
if(o.expand){base.$outer=base.$wrapper.parent();base.$window.css({width:'100%',height:'100%'});base.checkResize();}
if(o.buildStartStop){base.buildAutoPlay();}
if(o.buildArrows){base.buildNextBackButtons();}
if(!o.autoPlay){o.autoPlayLocked=false;}
base.updateSlider();base.$lastPage=base.$currentPage;base.runTimes=$('div.anythingSlider').index(base.$wrapper)+1;base.regex=new RegExp('panel'+base.runTimes+'-(\\d+)','i');if(!$.isFunction($.easing[o.easing])){o.easing="swing";}
if(o.pauseOnHover){base.$wrapper.hover(function(){if(base.playing){base.$el.trigger('slideshow_paused',base);base.clearTimer(true);}},function(){if(base.playing){base.$el.trigger('slideshow_unpaused',base);base.startStop(base.playing,true);}});}
var triggers,startPanel=(o.hashTags)?base.gotoHash()||o.startPanel:o.startPanel;base.setCurrentPage(startPanel,false);base.slideControls(false);base.$wrapper.bind('mouseenter mouseleave',function(e){base.hovered=(e.type==="mouseenter")?true:false;base.slideControls(base.hovered,false);});$(document).keyup(function(e){if(o.enableKeyboard&&base.$wrapper.is('.activeSlider')&&!e.target.tagName.match('TEXTAREA|INPUT|SELECT')){switch(e.which){case 39:base.goForward();break;case 37:base.goBack();break;}}});base.$items.delegate('a','focus.AnythingSlider',function(e){var panel=$(this).closest('.panel'),indx=base.$items.index(panel)+base.adj;base.$items.find('.focusedLink').removeClass('focusedLink');$(this).addClass('focusedLink');base.$window.scrollLeft(0);if(!panel.is('.activePage')&&base.currentPage+o.showMultiple-1>indx){base.gotoPage(indx);e.preventDefault();}});triggers="slideshow_paused slideshow_unpaused slide_init slide_begin slideshow_stop slideshow_start initialized swf_completed".split(" ");$.each("onShowPause onShowUnpause onSlideInit onSlideBegin onShowStop onShowStart onInitialized onSWFComplete".split(" "),function(i,f){if($.isFunction(o[f])){base.$el.bind(triggers[i],o[f]);}});if($.isFunction(o.onSlideComplete)){base.$el.bind('slide_complete',function(){setTimeout(function(){o.onSlideComplete(base);},0);});}
base.initialized=true;base.$el.trigger('initialized',base);base.startStop(base.playing);};base.updateSlider=function(){base.$el.children('.cloned').remove();base.$nav.empty();base.currentPage=base.currentPage||1;base.$items=base.$el.children();base.pages=base.$items.length;o.showMultiple=parseInt(o.showMultiple,10)||1;if(o.showMultiple>1){if(o.showMultiple>base.pages){o.showMultiple=base.pages;}
base.adjustMultiple=(o.infiniteSlides&&base.pages>1)?0:o.showMultiple-1;base.pages=base.$items.length-base.adjustMultiple;}
base.$controls.add(base.$nav).add(base.$startStop).add(base.$forward).add(base.$back)[(base.pages<=1)?'hide':'show']();if(base.pages>1){base.buildNavigation();}
if(o.infiniteSlides&&base.pages>1){base.$el.prepend(base.$items.filter(':last').clone().addClass('cloned').removeAttr('id'));if(o.showMultiple>1){base.$el.append(base.$items.filter(':lt('+o.showMultiple+')').clone().addClass('cloned').addClass('multiple').removeAttr('id'));}else{base.$el.append(base.$items.filter(':first').clone().addClass('cloned').removeAttr('id'));}
base.$el.find('.cloned').each(function(){$(this).find('a,input,textarea,select,button,area').attr('disabled','disabled');$(this).find('[id]').removeAttr('id');});}
base.$items=base.$el.children().addClass('panel');base.setDimensions();if(o.resizeContents&&base.pages>1){base.$items.css('width',base.width);base.$wrapper.css('width',base.getDim(base.currentPage)[0]);base.$wrapper.add(base.$items).css('height',base.height);}else{base.$win.load(function(){base.setDimensions();});}
if(base.currentPage>base.pages){base.currentPage=base.pages;}
base.setCurrentPage(base.currentPage,false);base.$nav.find('a').eq(base.currentPage-1).addClass('cur');};base.buildNavigation=function(){if(o.buildNavigation&&(base.pages>1)){var tmp,klass,$a;base.$items.filter(':not(.cloned)').each(function(i){var index=i+1;klass=((index===1)?'first':'')+((index===base.pages)?'last':'');$a=$('<a href="#"></a>').addClass('panel'+index).wrap('<li class="'+klass+'" />');base.$nav.append($a.parent());if($.isFunction(o.navigationFormatter)){tmp=o.navigationFormatter(index,$(this));$a.html('<span>'+tmp+'</span>');if(parseInt($a.find('span').css('text-indent'),10)<0){$a.addClass(o.tooltipClass).attr('title',tmp);}}else{$a.html('<span>'+index+'</span>');}
$a.bind(o.clickControls,function(e){if(!base.flag&&o.enableNavigation){base.flag=true;setTimeout(function(){base.flag=false;},100);base.gotoPage(index);if(o.hashTags){base.setHash(index);}}
e.preventDefault();});});}};base.buildNextBackButtons=function(){base.$forward=$('<span class="arrow forward"><a href="javascript:void(0);"><span>'+o.forwardText+'</span></a></span>');base.$back=$('<span class="arrow back"><a href="javascript:void(0);"><span>'+o.backText+'</span></a></span>');base.$back.bind(o.clickBackArrow,function(e){if(o.enableArrows&&!base.flag){base.flag=true;setTimeout(function(){base.flag=false;},100);base.goBack();}
e.preventDefault();});base.$forward.bind(o.clickForwardArrow,function(e){if(o.enableArrows&&!base.flag){base.flag=true;setTimeout(function(){base.flag=false;},100);base.goForward();}
e.preventDefault();});base.$back.add(base.$forward).find('a').bind('focusin focusout',function(){$(this).toggleClass('hover');});base.$forward.appendTo((o.appendForwardTo!==null&&$(o.appendForwardTo).length)?$(o.appendForwardTo):base.$wrapper);base.$back.appendTo((o.appendBackTo!==null&&$(o.appendBackTo).length)?$(o.appendBackTo):base.$wrapper);base.$arrowWidth=base.$forward.width();};base.buildAutoPlay=function(){base.$startStop.html('<span>'+(base.playing?o.stopText:o.startText)+'</span>').bind(o.clickSlideshow,function(e){if(o.enableStartStop){base.startStop(!base.playing);base.makeActive();if(base.playing&&!o.autoPlayDelayed){base.goForward(true);}}
e.preventDefault();}).bind('focusin focusout',function(){$(this).toggleClass('hover');});};base.checkResize=function(stopTimer){clearTimeout(base.resizeTimer);base.resizeTimer=setTimeout(function(){var w=base.$outer.width()-base.outerPad[0],h=(base.$outer[0].tagName==="BODY"?base.$win.height():base.$outer.height())-base.outerPad[1];if(base.width*o.showMultiple!==w||base.height!==h){base.setDimensions();base.gotoPage(base.currentPage,base.playing,null,1);}
if(typeof(stopTimer)==='undefined'){base.checkResize();}},500);};base.setDimensions=function(){var w,h,c,leftEdge=0,pw=(o.showMultiple>1)?base.width||base.$window.width()/o.showMultiple:base.$window.width(),winw=base.$win.width();if(o.expand){w=base.$outer.width()-base.outerPad[0];base.height=h=base.$outer.height()-base.outerPad[1];base.$wrapper.add(base.$window).add(base.$items).css({width:w,height:h});base.width=pw=(o.showMultiple>1)?w/o.showMultiple:w;}
base.$items.each(function(i){c=$(this).children();if(o.resizeContents){w=base.width;$(this).css({width:w,height:base.height});if(c.length&&c[0].tagName==="EMBED"){c.attr({width:'100%',height:'100%'});}
if(c.length===1){c.css({width:'100%',height:'100%'});}}else{w=$(this).width();if(c.length===1&&w>=winw){w=(c.width()>=winw)?pw:c.width();c.css('max-width',w);}
$(this).css('width',w);h=$(this).outerHeight();$(this).css('height',h);}
base.panelSize[i]=[w,h,leftEdge];leftEdge+=w;});base.$el.css('width',leftEdge);};base.getDim=function(page){if(base.pages<1){return;}
page=(o.infiniteSlides&&base.pages>1)?page:page-1;var i,w=base.panelSize[page][0],h=base.panelSize[page][1];if(o.showMultiple>1){for(i=1;i<o.showMultiple;i++){w+=base.panelSize[(page+i)%o.showMultiple][0];h=Math.max(h,base.panelSize[page+i][1]);}}
return[w,h];};base.goForward=function(autoplay){base.gotoPage(base.currentPage+parseInt(o.changeBy,10)*(o.playRtl?-1:1),autoplay);};base.goBack=function(autoplay){base.gotoPage(base.currentPage+parseInt(o.changeBy,10)*(o.playRtl?1:-1),autoplay);};base.gotoPage=function(page,autoplay,callback,time){if(autoplay!==true){autoplay=false;base.startStop(false);base.makeActive();}
if(o.changeBy!==1){if(page<0){page+=base.pages;}
if(page>base.pages){page-=base.pages;}}
if(base.pages<=1){return;}
base.$lastPage=base.$currentPage;if(typeof(page)!=="number"){page=o.startPanel;base.setCurrentPage(page);}
if(autoplay&&o.isVideoPlaying(base)){return;}
if(page>base.pages+1-base.adj){page=(!o.infiniteSlides&&!o.stopAtEnd)?1:base.pages;}
if(page<base.adj){page=(!o.infiniteSlides&&!o.stopAtEnd)?base.pages:1;}
base.currentPage=(page>base.pages)?base.pages:(page<1)?1:base.currentPage;base.$currentPage=base.$items.eq(base.currentPage-base.adj);base.exactPage=page;base.$targetPage=base.$items.eq((page===0)?base.pages-base.adj:(page>base.pages)?1-base.adj:page-base.adj);base.$el.trigger('slide_init',base);base.slideControls(true,false);if(autoplay!==true){autoplay=false;}
if(!autoplay||(o.stopAtEnd&&page===base.pages)){base.startStop(false);}
base.$el.trigger('slide_begin',base);if(!o.resizeContents){var d=base.getDim(page);base.$wrapper.filter(':not(:animated)').animate({width:d[0],height:d[1]},{queue:false,duration:time||o.animationTime,easing:o.easing});}
base.$el.filter(':not(:animated)').animate({left:-base.panelSize[(o.infiniteSlides&&base.pages>1)?page:page-1][2]},{queue:false,duration:time||o.animationTime,easing:o.easing,complete:function(){base.endAnimation(page,callback);}});};base.endAnimation=function(page,callback){if(page===0){base.$el.css('left',-base.panelSize[base.pages][2]);page=base.pages;}else if(page>base.pages){base.$el.css('left',-base.panelSize[1][2]);page=1;}
base.exactPage=page;base.setCurrentPage(page,false);base.$items.removeClass('activePage').eq(page-base.adj).addClass('activePage');if(!base.hovered){base.slideControls(false);}
base.$el.trigger('slide_complete',base);if(typeof callback==='function'){callback(base);}
if(o.autoPlayLocked&&!base.playing){setTimeout(function(){base.startStop(true);},o.resumeDelay-o.delay);}};base.setCurrentPage=function(page,move){if(base.pages<1||page===0){return;}
page=parseInt(page,10);if(page>base.pages+1-base.adj){page=base.pages-base.adj;}
if(page<base.adj){page=1;}
if(o.buildNavigation){base.$nav.find('.cur').removeClass('cur').end().find('a').eq(page-1).addClass('cur');}
if(!o.infiniteSlides&&o.stopAtEnd){base.$wrapper.find('span.forward')[page===base.pages?'addClass':'removeClass']('disabled').end().find('span.back')[page===1?'addClass':'removeClass']('disabled');if(page===base.pages&&base.playing){base.startStop();}}
if(!move){var d=base.getDim(page);base.$wrapper.css({width:d[0],height:d[1]}).add(base.$window).scrollLeft(0);base.$el.css('left',-base.panelSize[(o.infiniteSlides&&base.pages>1)?page:page-1][2]);}
base.currentPage=page;base.$currentPage=base.$items.removeClass('activePage').eq(page-base.adj).addClass('activePage');};base.makeActive=function(){if(!base.$wrapper.is('.activeSlider')){$('.activeSlider').removeClass('activeSlider');base.$wrapper.addClass('activeSlider');}};base.gotoHash=function(){var n=base.win.location.hash.match(base.regex);return(n===null)?'':parseInt(n[1],10);};base.setHash=function(n){var s='panel'+base.runTimes+'-',h=base.win.location.hash;if(typeof h!=='undefined'){base.win.location.hash=(h.indexOf(s)>0)?h.replace(base.regex,s+n):h+"&"+s+n;}};base.slideControls=function(toggle){var dir=(toggle)?'slideDown':'slideUp',t1=(toggle)?0:o.animationTime,t2=(toggle)?o.animationTime:0,op=(toggle)?1:0,sign=(toggle)?0:1;if(o.toggleControls){base.$controls.stop(true,true).delay(t1)[dir](o.animationTime/2).delay(t2);}
if(o.buildArrows&&o.toggleArrows){if(!base.hovered&&base.playing){sign=1;op=0;}
base.$forward.stop(true,true).delay(t1).animate({right:sign*base.$arrowWidth,opacity:op},o.animationTime/2);base.$back.stop(true,true).delay(t1).animate({left:sign*base.$arrowWidth,opacity:op},o.animationTime/2);}};base.clearTimer=function(paused){if(base.timer){base.win.clearInterval(base.timer);if(!paused&&base.slideshow){base.$el.trigger('slideshow_stop',base);base.slideshow=false;}}};base.startStop=function(playing,paused){if(playing!==true){playing=false;}
if(playing&&!paused){base.$el.trigger('slideshow_start',base);base.slideshow=true;}
base.playing=playing;if(o.buildStartStop){base.$startStop.toggleClass('playing',playing).html('<span>'+(playing?o.stopText:o.startText)+'</span>');if(parseInt(base.$startStop.find('span').css('text-indent'),10)<0){base.$startStop.addClass(o.tooltipClass).attr('title',playing?'Stop':'Start');}}
if(playing&&o.resumeOnVideoEnd){base.clearTimer(true);base.timer=base.win.setInterval(function(){if(!o.isVideoPlaying(base)){base.goForward(true);}},o.delay);}else{base.clearTimer();}};base.init();};$.anythingSlider.defaults={theme:"default",expand:false,resizeContents:true,showMultiple:false,easing:"swing",buildArrows:true,buildNavigation:true,buildStartStop:true,appendForwardTo:null,appendBackTo:null,appendControlsTo:null,appendNavigationTo:null,appendStartStopTo:null,toggleArrows:false,toggleControls:false,startText:"Start",stopText:"Stop",forwardText:"&raquo;",backText:"&laquo;",tooltipClass:"tooltip",enableArrows:true,enableNavigation:true,enableStartStop:true,enableKeyboard:true,startPanel:1,changeBy:1,hashTags:true,infiniteSlides:true,navigationFormatter:null,autoPlay:false,autoPlayLocked:false,autoPlayDelayed:false,pauseOnHover:true,stopAtEnd:false,playRtl:false,delay:3000,resumeDelay:15000,animationTime:600,clickForwardArrow:"click",clickBackArrow:"click",clickControls:"click focusin",clickSlideshow:"click",resumeOnVideoEnd:true,addWmodeToObject:"opaque",isVideoPlaying:function(base){return false;}};$.fn.anythingSlider=function(options,callback){return this.each(function(){var page,anySlide=$(this).data('AnythingSlider');if((typeof(options)).match('object|undefined')){if(!anySlide){(new $.anythingSlider(this,options));}else{anySlide.updateSlider();}}else if(/\d/.test(options)&&!isNaN(options)&&anySlide){page=(typeof(options)==="number")?options:parseInt($.trim(options),10);if(page>=1&&page<=anySlide.pages){anySlide.gotoPage(page,false,callback);}}});};})(jQuery);
