File Manager

Current Directory: /home/astoriaah/www/old15/media/mod_zentools/js/carousel
Viewing File: /home/astoriaah/www/old15/media/mod_zentools/js/carousel/jquery.elastislide.min.js
(function(e,t,n){t.fn.touchwipe=function(e){var n={min_move_x:20,min_move_y:20,wipeLeft:function(){},wipeRight:function(){},wipeUp:function(){},wipeDown:function(){},preventDefaultEvents:!0};e&&t.extend(n,e);this.each(function(){function e(){this.removeEventListener("touchmove",t);i=null;o=!1}function t(t){n.preventDefaultEvents&&t.preventDefault();if(o){var r=t.touches[0].pageX,u=t.touches[0].pageY,a=i-r,f=s-u;if(Math.abs(a)>=n.min_move_x){e();a>0?n.wipeLeft():n.wipeRight()}else if(Math.abs(f)>=n.min_move_y){e();f>0?n.wipeDown():n.wipeUp()}}}function r(e){if(e.touches.length==1){i=e.touches[0].pageX;s=e.touches[0].pageY;o=!0;this.addEventListener("touchmove",t,!1)}}var i,s,o=!1;"ontouchstart"in document.documentElement&&this.addEventListener("touchstart",r,!1)});return this};t.elastislide=function(e,n){this.$el=t(n);this._init(e)};t.elastislide.defaults={speed:450,easing:"",imageW:190,margin:3,border:2,minItems:1,current:0,onClick:function(){return!1}};t.elastislide.prototype={_init:function(e){this.options=t.extend(!0,{},t.elastislide.defaults,e);this.$slider=this.$el.find("ul");this.$items=this.$slider.children("li");this.itemsCount=this.$items.length;this.$esCarousel=this.$slider.parent();this._validateOptions();this._configure();this._addControls();this._initEvents();this.$slider.show();this._slideToCurrent(!1)},_validateOptions:function(){this.options.speed<0&&(this.options.speed=450);this.options.margin<0&&(this.options.margin=4);this.options.border<0&&(this.options.border=1);if(this.options.minItems<1||this.options.minItems>this.itemsCount)this.options.minItems=1;this.options.current>this.itemsCount-1&&(this.options.current=0)},_configure:function(){this.current=this.options.current;this.visibleWidth=this.$esCarousel.width();if(this.visibleWidth<this.options.minItems*(this.options.imageW+2*this.options.border)+(this.options.minItems-1)*this.options.margin){this._setDim((this.visibleWidth-(this.options.minItems-1)*this.options.margin)/this.options.minItems);this._setCurrentValues();this.fitCount=this.options.minItems}else{this._setDim();this._setCurrentValues()}this.$slider.css({width:this.sliderW+24})},_setDim:function(e){this.$items.css({marginRight:this.options.margin,width:e?e:this.options.imageW+2*this.options.border}).children("a").css({borderWidth:this.options.border})},_setCurrentValues:function(){this.itemW=this.$items.outerWidth(!0);this.sliderW=this.itemW*this.itemsCount;this.visibleWidth=this.$esCarousel.width();this.fitCount=Math.floor(this.visibleWidth/this.itemW)},_addControls:function(){this.$navNext=t('<span class="es-nav-next"><i class="icon-right-open"></i><span>Next</span></span>');this.$navPrev=t('<span class="es-nav-prev"><i class="icon-left-open"></i><span>Previous</span></span>');t('<div class="es-nav"/>').append(this.$navPrev).append(this.$navNext).appendTo(this.$el)},_toggleControls:function(e,t){e&&t?t===1?e==="right"?this.$navNext.show():this.$navPrev.show():e==="right"?this.$navNext.hide():this.$navPrev.hide():(this.current===this.itemsCount-1||this.fitCount>=this.itemsCount)&&this.$navNext.hide()},_initEvents:function(){var n=this;t(e).bind("resize.elastislide",function(e){n.refresh()});this.$navNext.bind("click.elastislide",function(e){n._slide("right")});this.$navPrev.bind("click.elastislide",function(e){n._slide("left")});this.$items.bind("click.elastislide",function(e){n.options.onClick(t(this));return!1});n.$slider.touchwipe({wipeLeft:function(){n._slide("right")},wipeRight:function(){n._slide("left")}})},_slide:function(e,r,i,s){if(this.$slider.is(":animated"))return!1;var o=parseFloat(this.$slider.css("margin-left"));if(r===n){var u=this.fitCount*this.itemW,r;if(u<0)return!1;if(e==="right"&&this.sliderW-(Math.abs(o)+u)<this.visibleWidth){u=this.sliderW-(Math.abs(o)+this.visibleWidth)-this.options.margin;this._toggleControls("right",-1);this._toggleControls("left",1)}else if(e==="left"&&Math.abs(o)-u<0){u=Math.abs(o);this._toggleControls("left",-1);this._toggleControls("right",1)}else{var a;e==="right"?a=Math.abs(o)+this.options.margin+Math.abs(u):a=Math.abs(o)-this.options.margin-Math.abs(u);a>0?this._toggleControls("left",1):this._toggleControls("left",-1);a<this.sliderW-this.visibleWidth?this._toggleControls("right",1):this._toggleControls("right",-1)}e==="right"?r="-="+u:r="+="+u}else{var a=Math.abs(r);if(Math.max(this.sliderW,this.visibleWidth)-a<this.visibleWidth){r=-(Math.max(this.sliderW,this.visibleWidth)-this.visibleWidth);r!==0&&(r+=this.options.margin);this._toggleControls("right",-1);a=Math.abs(r)}a>0?this._toggleControls("left",1):this._toggleControls("left",-1);Math.max(this.sliderW,this.visibleWidth)-this.visibleWidth>a+this.options.margin?this._toggleControls("right",1):this._toggleControls("right",-1)}t.fn.applyStyle=i===n?t.fn.animate:t.fn.css;var f={marginLeft:r},l=this;this.$slider.applyStyle(f,t.extend(!0,[],{duration:this.options.speed,easing:this.options.easing,complete:function(){s&&s.call()}}))},_slideToCurrent:function(e){var t=this.current*this.itemW;this._slide("",-t,e)},add:function(e,t){this.$items=this.$items.add(e);this.itemsCount=this.$items.length;this._setDim();this._setCurrentValues();this.$slider.css({width:this.sliderW});this._slideToCurrent();t&&t.call(e)},destroy:function(e){this._destroy(e)},_destroy:function(n){this.$el.unbind(".elastislide").removeData("elastislide");t(e).unbind(".elastislide");n&&n.call()},refresh:function(e){var e=this;e._setCurrentValues();if(e.visibleWidth<e.options.minItems*(e.options.imageW+2*e.options.border)+(e.options.minItems-1)*e.options.margin){e._setDim((e.visibleWidth-(e.options.minItems-1)*e.options.margin)/e.options.minItems);e._setCurrentValues();e.fitCount=e.options.minItems}else{e._setDim();e._setCurrentValues()}e.$slider.css({width:e.sliderW+10});clearTimeout(e.resetTimeout);e.resetTimeout=setTimeout(function(){e._slideToCurrent()},200)}};var r=function(e){this.console&&console.error(e)};t.fn.elastislide=function(e){if(typeof e=="string"){var n=Array.prototype.slice.call(arguments,1);this.each(function(){var i=t.data(this,"elastislide");if(!i){r("cannot call methods on elastislide prior to initialization; attempted to call method '"+e+"'");return}if(!t.isFunction(i[e])||e.charAt(0)==="_"){r("no such method '"+e+"' for elastislide instance");return}i[e].apply(i,n)})}else this.each(function(){var n=t.data(this,"elastislide");n||t.data(this,"elastislide",new t.elastislide(e,this))});return this}})(window,jQuery);