(function($) {
	$.fn.horizontalRotate = function(){
		return this.each(function() {
			var mainObj = $(this);
			var mainObjWrapp = $('div.reportWrapper', this);
			var items = $('div.item', mainObj);
			var itemWidth = parseInt($(items[0]).width())+parseInt($(items[0]).css('paddingLeft'))+parseInt($(items[0]).css('paddingRight'));
/*			if(console){
				console.log(mainObj.width());
				console.log(itemWidth);
				console.log(Math.ceil(mainObj.width()/itemWidth));
			}*/
			var itemCounts = items.length-5;
			itemCounts = items.length-Math.ceil(mainObj.width()/itemWidth)+1;
			var aLeft = $('a.reportLeft', mainObj);
			var aRight = $('a.reportRight', mainObj);
			var currentState = 0;
			
			bindClicks();
			
			function rotate(direction){
				switch(direction){
					case 'right':
						currentState++;
						break;
					case 'left':
						currentState--;
						break;
					default:
						currentState=0;

				}
				mainObjWrapp.animate({
						marginLeft: (-(itemWidth*currentState))+"px"
					}, 500);
				bindClicks();
			}
			function bindClicks(){
				aRight.unbind('click');				
				aLeft.unbind('click');				
				if(currentState<itemCounts){
					aRight.bind('click', function(){
						rotate('right');
					});
					aRight.removeClass('rightLast');
				}else{
					aRight.addClass('rightLast');
				}
				if(currentState>0){
					aLeft.bind('click', function(){
						rotate('left');
					});
					aLeft.removeClass('leftLast');
				}else{
					aLeft.addClass('leftLast');
				}
			}
		});
	};
})(jQuery);
