/**
 * Jquery Scroll Row
 * 
 * @author: Thomaz Takashi Oda Toyama.
 * @retrun void
 */
 
(function($){
	$.fn.scrollRow = function(options){
		var opts 		= $.extend({},$.fn.scrollRow.defaults,options);
		var cssUl		= $.fn.scrollRow.cssUl;
		var cssDefault	= $.fn.scrollRow.cssDefault;
		var cssLeft		= $.fn.scrollRow.cssLeft;
		var cssRight	= $.fn.scrollRow.cssRight;
		
		/*var objUl = $(this).find('ul');*/
		var objUl 	= $('ul:first',this);
		var ulWidth = 0;
		var objOffSet 	= $(this).offset();
		var width		= 792;/*$(this).outerWidth();*/
		var height		= $(this).outerHeight();
		var left 		= 0;
		var top 		= 0;
		
		objUl.css(cssUl);
		objUl.find('li').each(function(){ ulWidth += 198; /*parseInt($(this).innerWidth());*/});
		ulWidth = ulWidth - 792;
		if(ulWidth < 805) ulWidth = 792;
		objUl.css('width',ulWidth+'px');
		
		$(this).css(cssDefault);
		opts.divLeft 	= $(document.createElement("div")).css(cssLeft).prependTo(this);
		opts.divRight 	= $(document.createElement("div")).css(cssRight).prependTo(this);
		
		opts.divLeft.click(function(){$.fn.scrollRow.onClickLeft(width,objUl,ulWidth,opts.divLeft);});
		opts.divRight.click(function(){$.fn.scrollRow.onClickRight(width,objUl,ulWidth,opts.divRight);});		

		$(this).mouseenter(function(){
			
			$(this).mousemove(function(e){
				var wMiddle	= (width/2);
				var hMiddle = (height/2);
				var ulLeft = ( -1 * parseInt(objUl.css('left')) );
				
				left 	= e.pageX-objOffSet.left;
				top 	= e.pageY-objOffSet.top;
				
				if(left < (wMiddle)){
					$.fn.scrollRow.hiddeDiv(opts.divRight);
					if(opts.divLeft.css('display') != 'block' && ( ulLeft > 0)){
						$.fn.scrollRow.showLeft(opts.divLeft,opts.divRight,hMiddle);
					}
				}else{
					$.fn.scrollRow.hiddeDiv(opts.divLeft);
					if(opts.divRight.css('display') != 'block' && ( ulLeft < (ulWidth - width))){
						$.fn.scrollRow.showRight(opts.divLeft,opts.divRight,hMiddle);					
					}
				}
			});										   
		});
		$(this).mouseleave(function(){
			$.fn.scrollRow.hiddeDiv(opts.divLeft);
			$.fn.scrollRow.hiddeDiv(opts.divRight);
		});
	};
	$.fn.scrollRow.onClickLeft = function(width,objUl,ulWidth,hidde){
		var ulLeft = (-1*parseInt(objUl.css('left')));
		var position = ( ulLeft - width);
		
		if(position < 0) position = 0;
		if( position >= 0 ){
			objUl.animate({'left':'-'+position+'px'}, 500 );
		}
		$.fn.scrollRow.hiddeDiv(hidde);
	};
	$.fn.scrollRow.onClickRight = function(width,objUl,ulWidth,hidde){
		var ulLeft = (-1*parseInt(objUl.css('left')));
		var position = ( ulLeft + width );
		
		if( (position + width) > objUl.innerWidth()) position = ( objUl.innerWidth() - width );
		
		if( position <= (ulWidth + width)){
			objUl.animate({'left':'-'+position+'px'}, 500 );
		}
		$.fn.scrollRow.hiddeDiv(hidde);
	};
	$.fn.scrollRow.showLeft = function(divLeft,divRight,hMiddle){
		var objOffSetDivL 	= divLeft.offset();
		var hDiv 			= divLeft.innerHeight();
		var hDivMiddle 		= (hDiv/2);
		var alignMiddleLeft = (hMiddle - hDivMiddle);
		
		divLeft.css('top',alignMiddleLeft+'px');
		
		$.fn.scrollRow.hiddeDiv(divRight);
		divLeft.fadeIn('slow');
	};
	
	$.fn.scrollRow.showRight = function(divLeft,divRight,hMiddle){
		var objOffSetDivR	= divRight.offset();
		var hDiv 			= divRight.innerHeight();
		var hDivMiddle 		= (hDiv/2);
		var alignMiddleRight = (hMiddle - hDivMiddle);
		
		divRight.css('top',alignMiddleRight+'px');
		
		$.fn.scrollRow.hiddeDiv(divLeft);
		divRight.fadeIn('slow');
	};
	$.fn.scrollRow.hiddeDiv = function(hiddeDiv){ hiddeDiv.fadeOut('slow'); };
	
	$.fn.scrollRow.defaults = {
		divLeft: null
		,divRight: null
		,listRows: 4
	};
	$.fn.scrollRow.cssDefault = {
		'position':'relative'
	};
	$.fn.scrollRow.cssUl = {
		'position': 'absolute'
		,'top':0, 'left':0, 'z-index' : 0
	}
	$.fn.scrollRow.cssLeft = {
		'position':'absolute'
		,'display':'none', 'opacity':0.8
		,'background': 'url(arquivos/183996/img/seta_left.png) no-repeat center'
		,'width':'27px', 'height':'165px'
		,'top':0 ,'left':0
		,'cursor':'pointer'
		, 'z-index' : 5
	};
	$.fn.scrollRow.cssRight = {
		'position':'absolute'
		,'display':'none', 'opacity':0.8
		,'background': 'url(arquivos/183996/img/seta_right.png) no-repeat center'
		,'width':'27px', 'height':'165px'
		,'top':0 ,'right':'5px'
		,'cursor':'pointer'
		, 'z-index' : 5
	}
})(jQuery);

/*var jQuery = jQuery.noConflict();*/

jQuery(document).ready(function(){
	jQuery('div[class*=scrollRow1]').scrollRow();	
	jQuery('div[class*=scrollRow2]').scrollRow();	
	jQuery('div[class*=scrollRow3]').scrollRow();	
});

