/*!
 * Tiny Carousel 1.8
 * http://www.baijs.nl/tinycarousel
 *
 * Copyright 2010, Maarten Baijs
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.opensource.org/licenses/gpl-2.0.php
 *
 * Date: 10 / 11 / 2010
 * Depends on library: jQuery
 *
 * Changes by Katja Deutschmann <http://www.katjadeutschmann.de>
 * Date: 17/05/2011
 * - renamed class "disable" to "disabled"
 * - enabled multiple pagers
 * - added play/pause button functionality
 * - enabled infinite carousel (only for display: 1)
 * - enable disabled function buttons
 *
 */
(function(a){a.fn.tinycarousel=function(d){var p={start:1,display:1,axis:"x",controls:true,playpause:true,toggleplaypause:true,pager:false,interval:false,intervaltime:3000,rewind:false,infinite:false,animation:true,duration:1000,callback:null};var d=a.extend(p,d);var n=a(this);var g=a(".viewport:first",n);var f=a(".overview:first",n);if(d.infinite){var k=f.children().last().clone().addClass("cloned").removeAttr("id");var v=f.children().first().clone().addClass("cloned").removeAttr("id");f.prepend(k);f.append(v)}var j=f.children();var e=a(".next:first",n);var c=a(".prev:first",n);var t=a(".playpause:first",n);var o=a(".play:first",n);var l=a(".pause:first",n);var r=a(".pager",n);var D,B,x,i,s,u=false,q=true,z=d.axis=="x";return this.each(function(){b()});function b(){D=z?a(j[0]).outerWidth(true):a(j[0]).outerHeight(true);var F=Math.ceil(((z?g.outerWidth():g.outerHeight())/(D*d.display))-1);if(d.infinite){B=Math.max(1,Math.ceil((j.length-2)/d.display)-F);x=Math.min(B,Math.max(1,d.start))-1;f.css(z?"width":"height",(D*(j.length+2)));var E={};E[z?"left":"top"]=-D*d.display;f.css(E)}else{B=Math.max(1,Math.ceil(j.length/d.display)-F);x=Math.min(B,Math.max(1,d.start))-2;f.css(z?"width":"height",(D*j.length))}w(1);y()}function y(){if(d.controls&&c.length>0&&e.length>0){c.removeAttr("disabled");c.click(function(E){E.preventDefault();if(d.infinite){f.stop();h()}w(-1);return false});e.removeAttr("disabled");e.click(function(E){E.preventDefault();if(d.infinite){f.stop();h()}w(1);return false})}if(d.interval){n.hover(function(){clearTimeout(i);s=true},function(){s=false;A()})}if(d.pager&&r.length>0){a("a",r).click(C)}if(d.playpause&&o.length>0&&l.length>0){o.removeAttr("disabled");o.click(function(E){E.preventDefault();u=false;A();if(d.toggleplaypause){o.hide();l.show()}else{o.addClass("disabled");l.removeClass("disabled")}});l.removeAttr("disabled");l.click(function(E){E.preventDefault();u=true;clearTimeout(i);if(d.toggleplaypause){o.show();l.hide()}else{o.removeClass("disabled");l.addClass("disabled")}})}}function m(E){var F=(typeof E=="undefined")?x:E;if(d.controls&&!d.infinite){c.toggleClass("disabled",!(F>0));e.toggleClass("disabled",!(F+1<B))}if(d.pager){a.each(r,function(G,H){var I=a(".pagenum",a(H));I.removeClass("active");if(d.infinite){a(I[F-1]).addClass("active")}else{a(I[F]).addClass("active")}})}}function C(E){if(a(this).hasClass("pagenum")){x=(d.infinite)?parseInt(this.rel):parseInt(this.rel)-1;w(1)}return false}function A(){if(d.interval&&!s&&!u){clearTimeout(i);i=setTimeout(function(){if(d.infinite){w(1)}else{x=!d.rewind&&(x+1==B)?-1:x;q=x+1==B?false:x==0?true:q;w((d.rewind?(q?1:-1):1))}},d.intervaltime)}}function w(F){if((d.infinite)||(!d.infinite&&x+F>-1&&x+F<B)){x+=F;if(d.infinite&&x>=j.length-1){m(1)}else{if(d.infinite&&x==0){m(j.length-2)}else{m()}}var E={};E[z?"left":"top"]=-(x*(D*d.display));f.animate(E,{queue:false,duration:d.animation?d.duration:0,complete:function(){if(d.infinite){h()}if(typeof d.callback=="function"){d.callback.call(this,j[x],x)}}});A()}}function h(){var E={};if(x>=B+1){x=1;E[z?"left":"top"]=-D;f.css(E)}else{if(x==0){x=B;E[z?"left":"top"]=-(x*(D));f.css(E)}}}}})(jQuery);
