jQuery.fn.accessNewsTop = function(settings) {
    settings = jQuery.extend({
        newsHeadline: "",
        newsSpeed: "normal",
		overblockWidth: 0
    }, settings);
    return this.each(function(i) {
       
        aNewsSliderTop.init(settings,this);
    });
};
var aNewsSliderTop = {
    countLeft: 0,
    animating: false,
	overblockWidth: 280,
	isOverAnimating: false, // идентификатор что была анимация при наведении
	mouseInsideOvers: false,
	mouseInsideOversState: false,
	indexStart1:0, // 2loop
	indexEnd1:0,
	
    init: function(s,p) {
		if( s.overblockWidth > 0 ) 
			aNewsSliderTop.overblockWidth = s.overblockWidth;
		
        itemLength = jQuery(".over-block",p).length;
        newsContainerWidth = itemLength * aNewsSliderTop.overblockWidth;
      	jQuery(".overflow",p).css("width" , newsContainerWidth);
		aNewsSlider.indexEnd1 = itemLength - 1;
		
		
		jQuery(".right-arrow",p).click( function() {
			// rollover_fix
			jQuery(".overflow",p).stop();
			aNewsSliderTop.isOverAnimating = false;
			var mat = parseInt( jQuery(".overflow",p).css("left") );
			mat = mat % aNewsSliderTop.overblockWidth;
			
			if (aNewsSliderTop.animating == true) {
	            return false;
			}
												 
        	itemLength = jQuery(".over-block",p).length + 1;
	        newsContainerWidth = itemLength * aNewsSliderTop.overblockWidth;
			jQuery(".overflow",p).css("width" , newsContainerWidth);
			//jQuery(".overflow",p).append( '<div class="over-block">'+ jQuery(".over-block",p)[aNewsSliderTop.countLeft].innerHTML +'</div>');			
			
			animateLeft = parseInt(jQuery(".overflow",p).css("left")) - aNewsSliderTop.overblockWidth + Math.abs(mat) - 1;
			//if( Math.abs(animateLeft) >  newsContainerWidth - aNewsSlider.overblockWidth*2) animateLeft = -1;			
			if( Math.abs(animateLeft) >  newsContainerWidth - aNewsSliderTop.overblockWidth*2){				
				jQuery(".overflow",p).append( '<div class="over-block">'+ jQuery(".over-block",p)[aNewsSliderTop.indexStart1+aNewsSliderTop.countLeft].innerHTML +'</div>');
				aNewsSliderTop.countLeft++;
			} ///animateLeft = -1;
			
			if (aNewsSliderTop.animating == false) {
				aNewsSliderTop.animating = true;
				jQuery(".overflow",p).animate({left: animateLeft}, s.newsSpeed, function() {
					jQuery(this).css("left",animateLeft);
				});
				aNewsSliderTop.restoreAnimating();//aNewsSliderTop.animating = false;
			}
			
            return false;
        });
		
		
		jQuery(".right-arrow",p).mouseover( function() {				
			/*if( !aNewsSliderTop.isOverAnimating )
			{
				itemLength = jQuery(".over-block",p).length;
				newsContainerWidth = itemLength * aNewsSliderTop.overblockWidth;
				
				animateLeft = 2*aNewsSliderTop.overblockWidth - newsContainerWidth - 1;
				jQuery(".overflow",p).animate({left: animateLeft}, 1800*itemLength, "linear", function() {
					jQuery(this).css("left",animateLeft);
				});
				
				aNewsSliderTop.isOverAnimating = true;
			}*/
		});	
		jQuery(".right-arrow",p).mouseout( function() {			
			if( aNewsSliderTop.isOverAnimating ) {
				jQuery(".overflow",p).stop();
				aNewsSliderTop.isOverAnimating = false;			
			}
		});	
		
		
		
		
		
        jQuery(".left-arrow",p).click(function() {
				
				if (aNewsSliderTop.animating == true) {
					return false;
				}
				
				itemLength = jQuery(".over-block",p).length + 1;
	        	newsContainerWidth = itemLength * aNewsSliderTop.overblockWidth;
				
				// rollover_fix
				jQuery(".overflow",p).stop();
				aNewsSliderTop.isOverAnimating = false;
				var mat = parseInt( jQuery(".overflow",p).css("left") ) % aNewsSliderTop.overblockWidth;
				
				
				animateLeft = parseInt(jQuery(".overflow",p).css("left")) + aNewsSliderTop.overblockWidth + Math.abs(mat) -1;
				//if( animateLeft > -1 ) animateLeft = -newsContainerWidth + aNewsSliderTop.overblockWidth*3 - 1;
				
				if( animateLeft > -1 ) 
				{
					animateLeft = -1;
					jQuery(".overflow",p).css("left","-" + aNewsSliderTop.overblockWidth + "px")
					
					jQuery(".overflow",p).html( '<div class="over-block">'+jQuery(".over-block",p)[aNewsSlider.indexEnd1].innerHTML + '</div>' + jQuery(".overflow",p).html());					
					aNewsSlider.indexStart1++;					
					//animateLeft = -newsContainerWidth + aNewsSlider.overblockWidth*3 - 1;					
				}
				
				
                //if ((animateLeft + parseInt(jQuery(".overflow",p).css("width"))) <= parseInt(jQuery(".overflow",p).css("width"))) {
                   // jQuery(".next",p).css("display","block");				
						if (aNewsSliderTop.animating == false )
						{
						  aNewsSliderTop.animating = true;  
						  jQuery(".overflow",p).animate({left: animateLeft}, s.newsSpeed, function() {
									jQuery(this).css("left",animateLeft);
									if (parseInt(jQuery(".overflow",p).css("left")) >= 0) {
												jQuery(".prev",p).css("display","none");
											}
									});
									//aNewsSliderTop.animating = false;
									aNewsSliderTop.restoreAnimating();
						 }
             //}
            return false;
        });	
		
		
		
		jQuery(".left-arrow",p).mouseover( function() {				
			/*if( !aNewsSliderTop.isOverAnimating ) 
			{
				itemLength = jQuery(".over-block",p).length;
				animateLeft = -1;
				
				var totalScroll = Math.round( Math.abs(  parseInt(jQuery(".overflow",p).css("left"))  ) / aNewsSliderTop.overblockWidth ) + 1;
					
				jQuery(".overflow",p).animate({left: animateLeft}, 2000*totalScroll, "linear", function() {
					jQuery(this).css("left",animateLeft);
				});				
				aNewsSliderTop.isOverAnimating = true;
			}*/
		});	
		jQuery(".left-arrow",p).mouseout( function() {			
			if( aNewsSliderTop.isOverAnimating ) {
				jQuery(".overflow",p).stop();
				aNewsSliderTop.isOverAnimating = false;
			}			
		});	
		
		
		
    },
	
	
	restoreAnimating:function() {
		window.setTimeout('aNewsSliderTop.animating = false;', 200);
	}
	
	
	
};

