;
(function(jQuery){
	$.fn.ScrollerContent = function(option)
	{
		var defaults = {
			classNameLeftButton: 'but-l',
			classNameRightButton: 'but-r',
			classNameScroll: 'scroll',
			scrollSpeed: 15
		};
		var option = $.extend(true, {}, defaults, option);
		$(this).each(function(){
			var Scroller = $(this);

			var moveleftvar = null;
			var moverightvar = null;

			var ScrollContent  = $('.'+option.classNameScroll, Scroller);
			var TableScroll = $('table:first', ScrollContent);

			var ScrollWidth = ScrollContent.width();

			if(ScrollContent.size()>0)
			{
				$('.'+option.classNameRightButton, Scroller)
				.click(function(){return false;})
				.mousedown(function(){
					moveleft();
				}).mouseup(function(){clearTimeout(moveleftvar)})
				.mouseout(function(){clearTimeout(moveleftvar)});
				
				$('.'+option.classNameLeftButton, Scroller)
				.click(function(){return false;})
				.mousedown(function(){
					moveright();
				}).mouseup(function(){clearTimeout(moverightvar)})
				.mouseout(function(){clearTimeout(moverightvar)});
				
				var table_pos = parseInt($(TableScroll).css('left'),10)||0;
				var diff = ScrollWidth-(parseInt(TableScroll.width())+table_pos);

				if(TableScroll.width()<ScrollWidth)
				{
					TableScroll.css('left', 0+"px");
				}
				if(diff>0 && parseInt($(TableScroll).css('left'))<0)
				{
					var left=parseInt($(TableScroll).css('left'));
					TableScroll.css('left', left+diff+"px");
				}

				function moveleft(){
					var left=parseInt($(TableScroll).css('left'))||0;
					var tt = ScrollWidth;
					var tt2 = TableScroll.width();
					var tt3 = Math.abs(tt2-tt);
					var tt4 = Math.abs(left);

					if (tt<tt2 && tt4<tt3){
						TableScroll.css('left', left-3+"px");
					}else{
						clearTimeout(moveleftvar);
						return false;
					}
					moveleftvar=setTimeout(moveleft , option.scrollSpeed);
				};
				function moveright(){
					var left=parseInt($(TableScroll).css('left'))||0;
					if (left<0){
						TableScroll.css('left', left+3+"px");
					}else{
						clearTimeout(moverightvar);
						return false;
					}
					moverightvar=setTimeout(moveright , option.scrollSpeed);
				};
			}
		});
	}
})(jQuery);
