(function($){

	$.fn.mouseact = function(options){
	
		settings = jQuery.extend({
			name:		"mouseact",
			tracking:	this,
			controller: 'mouse'
		}, options);

		var element = jQuery(this);
		var rows = element.children('div.row');
				
		rows.each(function(){
		
			var parent = jQuery(this);
	
			var div = parent;
			
			//Get menu width
			var divWidth = div.width();
			
			//Remove scrollbars
			div.css({overflow: 'hidden'});
			
//			jQuery('img').lazyload({         
//				container: settings.controller,
//				threshold : 1000
//			});
			
		
		});


		jQuery('.container').mousemove(function(e) {
		    // trac ticket #60
		    //console.log(e.pageX + " : " + parseInt(jQuery('.scrub-area').width() + jQuery('#slider').width() + 50));
		    
		    if (parseInt(jQuery(settings.controller).css('left')) >= parseInt(jQuery('.scrub-area').width() - jQuery('#slider').width()) &&
		    	e.pageX >= parseInt(jQuery('.scrub-area').width() + jQuery('#slider').width() + 50)) 
            {
		        jQuery('#slider').trigger('mouseup');
		    }
		});
						
		jQuery(settings.controller).draggable({ axis: 'x', containment: 'parent',
			drag: function(e, ui)
			{	
				var sliderWidth	= jQuery('#slider').width();
				var scrubWidth	= jQuery('.scrub-area').width();
				rows.each(function(){
					var child		= jQuery(this).children('table');
					var left		= (parseInt(jQuery(settings.controller).css('left')) - jQuery(this).offset().left) * (child.width()-(scrubWidth-sliderWidth)) / (scrubWidth-sliderWidth);
					
					jQuery(this).scrollLeft(left);
				});
			}
		 });
	};

})(jQuery);
