(function($){$.fn.tinycarousel=function(options){var defaults={start:1,display:1,axis:'x',controls:true,pager:false,interval:false,intervaltime:3000,rewind:false,animation:true,duration:1000,callback:null};var options=$.extend(defaults,options);var oSlider=$(this);var oViewport=$('.viewport:first',oSlider);var oContent=$('.overview:first',oSlider);var oPages=oContent.children();var oBtnNext=$('.next:first',oSlider);var oBtnPrev=$('.prev:first',oSlider);var oPager=$('.pager:first',oSlider);var iPageSize,iSteps,iCurrent,oTimer,bPause,bForward=true,bAxis=options.axis=='x';return this.each(function(){initialize();});function initialize(){iPageSize=bAxis?$(oPages[0]).outerWidth(true):$(oPages[0]).outerHeight(true);var iLeftover=Math.ceil(((bAxis?oViewport.outerWidth():oViewport.outerHeight())/(iPageSize*options.display))-1);iSteps=Math.max(1,Math.ceil(oPages.length/options.display)-iLeftover);iCurrent=Math.min(iSteps,Math.max(1,options.start))-2;oContent.css(bAxis?'width':'height',(iPageSize*oPages.length));move(1);setEvents();}
function setEvents(){if(options.controls&&oBtnPrev.length>0&&oBtnNext.length>0){oBtnPrev.click(function(){move(-1);return false;});oBtnNext.click(function(){move(1);return false;});}if(options.interval){oSlider.hover(function(){clearTimeout(oTimer);bPause=true},function(){bPause=false;setTimer();});}if(options.pager&&oPager.length>0){$('a',oPager).click(setPager);}}
function setButtons(){if(options.controls){
 /*oBtnPrev.toggleClass('disable',!(iCurrent>0));*//*oBtnNext.toggleClass('disable',!(iCurrent+1<iSteps));*/
 }if(options.pager){var oNumbers=$('.pagenum',oPager);oNumbers.removeClass('active');$(oNumbers[iCurrent]).addClass('active');}}
function setPager(oEvent){if($(this).hasClass('pagenum')){iCurrent=parseInt(this.rel)-1;move(1);}return false;}
function setTimer(){if(options.interval&&!bPause){clearTimeout(oTimer);oTimer=setTimeout(function(){iCurrent=!options.rewind&&(iCurrent+1==iSteps)?-1:iCurrent;bForward=iCurrent+1==iSteps?false:iCurrent==0?true:bForward;move((options.rewind?(bForward?1:-1):1));},options.intervaltime);}}
function move(iDirection){

if(iCurrent+iDirection==iSteps){

	
	iCurrent = 0;
	
	var oPosition={};
	oPosition[bAxis?'left':'top']=0;
	oContent.animate(oPosition,{
		queue:false,duration:options.animation?options.duration:0,complete:function(){
			if(typeof options.callback=='function')options.callback.call(this,oPages[iCurrent],iCurrent);
		}
	});
	setButtons();
	setTimer();
	

}
if((iCurrent+iDirection) > -1 && (iCurrent+iDirection!=iSteps)){


	iCurrent+=iDirection;var oPosition={};
	oPosition[bAxis?'left':'top']=-(iCurrent*(iPageSize*options.display));
	oContent.animate(oPosition,{
		queue:false,duration:options.animation?options.duration:0,complete:function(){
			if(typeof options.callback=='function')options.callback.call(this,oPages[iCurrent],iCurrent);
		}
	});
	setButtons();
	setTimer();

}

if((iCurrent+iDirection) == -1 && (iCurrent+iDirection!=iSteps)){
	
	//iCurrent+=iDirection;
	//alert(iCurrent*(iPageSize*options.display));
	iCurrent = options.display;
	
	var oPosition={};
	oPosition[bAxis?'left':'top']=-(iCurrent*(iPageSize*options.display));
	oContent.animate(oPosition,{
		queue:false,duration:options.animation?options.duration:0,complete:function(){
			if(typeof options.callback=='function')options.callback.call(this,oPages[iCurrent],iCurrent);
		}
	});
	setButtons();
	setTimer();
	
	
}

}};})(jQuery);
