

(function($)
{$.fn.gallery=function(options)
{var opts=$.extend({},$.fn.gallery.defaults,options);return this.each
(function()
{var self=this;var $this=$(this);var carousel=$(opts.carousel,this);var counter=$(opts.counter,this);var prev=$(opts.prev,this);var next=$(opts.next,this);var images=carousel.children(opts.itemTag);var length=images.length-1;var current=0;var currentLeft=parseInt(carousel.css('left'));var controls=function()
{current<length?next.show():next.hide();current>0?prev.show():prev.hide();var itemNumber=current+1;itemNumber=itemNumber<=9?'0'+itemNumber:itemNumber;$('span',counter).html(itemNumber);}
controls();var animate=function(direction)
{var index=direction<0?current:current-direction;var item=images.filter(':eq('+index+')');var shift=item.outerWidth()+parseInt(item.css('margin-right'));currentLeft+=shift*direction;carousel.stop().animate({left:currentLeft+'px'});}
var interval;var prevFunc=function()
{if(current>0)
{animate(1);current--;controls();}
return false;};prev.mousedown(function()
{clearInterval(interval);prevFunc();interval=setInterval(prevFunc,opts.carouselSpeed);return false;}).mouseup(function()
{clearInterval(interval);});var nextFunc=function()
{if(current<length)
{animate(-1);current++;controls();}
return false;};next.mousedown(function()
{clearInterval(interval);nextFunc();interval=setInterval(nextFunc,opts.carouselSpeed);return false;}).mouseup(function()
{clearInterval(interval);});});}
$.fn.gallery.defaults={itemTag:'a',carousel:'.images',carouselSpeed:400,next:'.next',prev:'.prev',counter:'.counter'};})(jQuery);
