var maxWidth=0;
var FirstLiElement;
var LastLiElement;
var SecondLiElement;
var showLiElements = 2;
var rotate = true;

function rotator() {
    var rotatenumber = jQuery('.htmlblock .rotate');
    
    if(rotatenumber.length>0) {
        if(parseInt(rotatenumber[0].innerHTML)) {
            showLiElements=parseInt(rotatenumber[0].innerHTML);
            jQuery(rotatenumber[0].parentNode).addClass('rotatenumber');
        }
    }

    jQuery('#scroller .articlelistblock').each(function() {
        var block = this;
        var header = jQuery('h2',block);
        var newDiv = jQuery('<div id="rotatorblock">');
        var newDivExtra = jQuery('<div id="rotatorcontainer">');
        
        jQuery(block).before(newDivExtra);
        jQuery(block).before(header);
        jQuery(block).before(newDiv);
        newDiv.append(block);
        newDivExtra.append(header);
        newDivExtra.append(newDiv);
        
        jQuery('li', block).each(function() {
            var li = jQuery(this);
            if((li.height())> maxWidth) {
                maxWidth = (li.width());
            }
        });
        
        var liElements = jQuery('li',block);
        
        if(liElements.length > showLiElements) {
            for(var x = 0; x < showLiElements; x++){
                jQuery(liElements[x]).css('display','block');
            }
            FirstLiElement = jQuery(liElements[0]);
            SecondLiElement = jQuery(liElements[1]);
            LastLiElement = jQuery(liElements[liElements.length - 1]);
   
            jQuery('li',block).width(maxWidth * 1.2);
            jQuery(block).width(showLiElements * maxWidth);
            jQuery(newDiv).width(showLiElements * maxWidth);
            
            jQuery('ul', block).width(maxWidth * 3.7);
            
            moveLiElement(block);
            jQuery('ul',block).mouseover(function() {rotate=false;});
            jQuery('ul',block).mouseout(function() {rotate=true;});
        } else {
            liElements.css('display','block');
        }
    });
}

function moveLiElement(block) {
    var timer = 4750;
    
    if(rotate == true) {
        liElement = jQuery(LastLiElement);
        
        jQuery(FirstLiElement).before(liElement);
        
        liElement.css('marginLeft', (maxWidth * -3) + 'px');
        liElement.css('display','block');
        
        liElement.animate({marginLeft: '0px' }, 2000);        
        SecondLiElement = FirstLiElement;
        FirstLiElement = LastLiElement;
        var liElements = jQuery('li',block);
        LastLiElement = liElements[liElements.length-1];
    }

    if(rotate==true) {
        var timer = 6500;
    } else {
        var timer = 500;
    }    

    setTimeout(function() {
        moveLiElement(block);
    },timer);

}

jQuery(function() {
    rotator();
});