var SCROLLING = false,
    SCRL_ELMT = null,
    SCRL_TIMER_ID = null,
    SCRL_INT = 100,
    SCRL_Y = -2,
    ROTATING = false,
    ROT_TIMER_ID = null,
    ROT_INT = 10000;

function checkScrolled(list){
    return (parseInt(list.style.top) + list.getElementsByTagName("IMG").item(0).height) <= 0;
}
function doScroll(el, Y){

    var list = el.getElementsByTagName("UL").length ? el.getElementsByTagName("UL").item(0) : null;


    if (list){
        //alert("scrolling " + el.childNodes[i]);

        if(!list.style.top)
            list.style.top = Y;//el.childNodes[i].top + Y;
        else
            list.style.top = parseInt(list.style.top) + Y;
    }

    return list;
}
function initRotate(el){
    SCRL_ELMT = el;
    ROT_TIMER_ID = window.setTimeout("startRotate()", ROT_INT);
    ROTATING = true;
    SCROLLING = false;
}
function initScroll(el){
    SCRL_ELMT = el;
    SCRL_TIMER_ID = window.setTimeout("startScroll()", SCRL_INT);
    SCROLLING = true;
}
function startRotate(){
    if(ROTATING)
        clearTimeout(ROT_TIMER_ID);

    ROTATING = false;

    if(!SCROLLING){
        doRotate(SCRL_ELMT, SCRL_Y);
    }

    ROT_TIMER_ID = window.setTimeout("startRotate()", ROT_INT);
    ROTATING = true;
}
function startScroll(){
    if(SCROLLING)
        clearTimeout(SCRL_TIMER_ID);

    SCROLLING = false;

    var list = doScroll(SCRL_ELMT, SCRL_Y);

    if(list){
        if(!checkScrolled(list)){
            SCRL_TIMER_ID = window.setTimeout("startScroll()", SCRL_INT);
            SCROLLING = true;
        }
    }
}
function doRotate(el, Y){
    var list = el.getElementsByTagName("UL").length ? el.getElementsByTagName("UL").item(0) : null;

    if(list){
        var items = list.getElementsByTagName("LI");
        if(checkScrolled(list)){
            list.removeChild(items[0]);
            list.style.top = 0;
        }


        list.appendChild(items.item(0).cloneNode(true));

        initScroll(el);
    }
}
