jQuery(document).ready(function(){	jQuery('div#gallery div.wrap').gallery({		duration: 1000,		infinite:true,		autoRotation: 5000,		listOfSlides: '> ul > li'	});});/** * jQuery gallery min v1.1.0 * Copyright (c) 2011 JetCoders * email: yuriy.shpak@jetcoders.com * www: JetCoders.com * Licensed under the MIT License: * http://www.opensource.org/licenses/mit-license.php **/jQuery.fn.gallery=function(options){return new Gallery(this.get(0),options);};function Gallery(context,options){this.init(context,options);};Gallery.prototype={options:{},init:function(context,options){this.options=jQuery.extend({infinite:false,duration:700,slideElement:1,autoRotation:false,effect:false,listOfSlides:'ul > li',switcher:false,disableBtn:false,nextBtn:'a.link-next, a.btn-next, .next',prevBtn:'a.link-prev, a.btn-prev, .prev',circle:true,direction:false,event:'click',IE:false,autoHeight:false,easing:'swing'},options||{});var _el=jQuery(context).find(this.options.listOfSlides);if(this.options.effect)this.list=_el;else this.list=_el.parent();this.switcher=jQuery(context).find(this.options.switcher);this.nextBtn=jQuery(context).find(this.options.nextBtn);this.prevBtn=jQuery(context).find(this.options.prevBtn);this.count=_el.index(_el.filter(':last'));if(this.options.switcher)this.active=this.switcher.index(this.switcher.filter('.active:eq(0)'));else this.active=_el.index(_el.filter('.active:eq(0)'));if(this.active<0)this.active=0;this.last=this.active;this.woh=_el.outerWidth(true);if(!this.options.direction)this.installDirections(this.list.parent().width());else{this.woh=_el.outerHeight(true);this.installDirections(this.list.parent().height());}if(!this.options.effect){this.rew=this.count-this.wrapHolderW+1;this.list.css({position:'relative'}).css(this.dirAnimate());}else{this.rew=this.count;this.list.css({opacity:0}).removeClass('active').eq(this.active).addClass('active').css({opacity:1}).css('opacity','auto');this.switcher.removeClass('active').eq(this.active).addClass('active');if(this.options.autoHeight)this.list.parent().css({height:this.list.eq(this.active).outerHeight()});}this.flag=true;if(this.options.infinite){this.count++;this.active+=this.count;this.list.append(_el.clone());this.list.append(_el.clone());this.list.css(this.dirAnimate());}this.initEvent(this,this.nextBtn,true);this.initEvent(this,this.prevBtn,false);if(this.options.disableBtn)this.initDisableBtn();if(this.options.autoRotation)this.runTimer(this);if(this.options.switcher)this.initEventSwitcher(this,this.switcher);},dirAnimate:function(){if(!this.options.direction)return{left:-(this.woh*this.active)};else return{top:-(this.woh*this.active)};},initDisableBtn:function(){this.prevBtn.removeClass('prev-'+this.options.disableBtn);this.nextBtn.removeClass('next-'+this.options.disableBtn);if(this.active==0||this.count+1==this.wrapHolderW)this.prevBtn.addClass('prev-'+this.options.disableBtn);if(this.active==0&&this.count+1==1||this.count+1<=this.wrapHolderW)this.nextBtn.addClass('next-'+this.options.disableBtn);if(this.active==this.rew)this.nextBtn.addClass('next-'+this.options.disableBtn);},installDirections:function(temp){this.wrapHolderW=Math.ceil(temp/this.woh);if(((this.wrapHolderW-1)*this.woh+this.woh/2)>temp)this.wrapHolderW--;},fadeElement:function(){if(jQuery.browser.msie&&this.options.IE){this.list.eq(this.last).css({opacity:0});this.list.removeClass('active').eq(this.active).addClass('active').css({opacity:'auto'});}else{this.list.eq(this.last).animate({opacity:0},{queue:false,easing:this.options.easing,duration:this.options.duration});this.list.removeClass('active').eq(this.active).addClass('active').animate({opacity:1},{queue:false,duration:this.options.duration,complete:function(){jQuery(this).css('opacity','auto');}});}if(this.options.autoHeight)this.list.parent().animate({height:this.list.eq(this.active).outerHeight()},{queue:false,duration:this.options.duration});if(this.options.switcher)this.switcher.removeClass('active').eq(this.active).addClass('active');this.last=this.active;},scrollElement:function($this){if(!$this.options.infinite)$this.list.animate($this.dirAnimate(),{queue:false,easing:$this.options.easing,duration:$this.options.duration});else $this.list.animate($this.dirAnimate(),$this.options.duration,$this.options.easing,function(){$this.flag=true});if($this.options.switcher)$this.switcher.removeClass('active').eq($this.active/$this.options.slideElement).addClass('active');},runTimer:function($this){if($this._t)clearTimeout($this._t);$this._t=setInterval(function(){if($this.options.infinite)$this.flag=false;$this.toPrepare($this,true);},this.options.autoRotation);},initEventSwitcher:function($this,el){el.bind($this.options.event,function(){$this.active=$this.switcher.index(jQuery(this))*$this.options.slideElement;if($this._t)clearTimeout($this._t);if($this.options.disableBtn)$this.initDisableBtn();if(!$this.options.effect)$this.scrollElement($this);else $this.fadeElement();if($this.options.autoRotation)$this.runTimer($this);return false;});},initEvent:function($this,addEventEl,dir){addEventEl.bind($this.options.event,function(){if($this.flag){if($this.options.infinite)$this.flag=false;if($this._t)clearTimeout($this._t);$this.toPrepare($this,dir);if($this.options.autoRotation)$this.runTimer($this);}return false;});},toPrepare:function($this,side){if(!$this.options.infinite){if(($this.active==$this.rew)&&$this.options.circle&&side)$this.active=-$this.options.slideElement;if(($this.active==0)&&$this.options.circle&&!side)$this.active=$this.rew+$this.options.slideElement;for(var i=0;i<$this.options.slideElement;i++){if(side){if($this.active+1<=$this.rew)$this.active++;}else{if($this.active-1>=0)$this.active--;}};}else{if($this.active>=$this.count+$this.count&&side)$this.active-=$this.count;if($this.active<=$this.count-1&&!side)$this.active+=$this.count;$this.list.css($this.dirAnimate());if(side)$this.active+=$this.options.slideElement;else $this.active-=$this.options.slideElement;}if(this.options.disableBtn)this.initDisableBtn();if(!$this.options.effect)$this.scrollElement($this);else $this.fadeElement();},stop:function(){if(this._t)clearTimeout(this._t);},play:function(){if(this._t)clearTimeout(this._t);if(this.options.autoRotation)this.runTimer(this);}}
