
var rotTimerValue = 5000;
var rotElement = 'maintab';
var rotFrameIdx = 0;
var rotTimerID = null;
var rotActive = false;
var rotPaused = false;

function rotateSetTimer( timerVal )
{
    rotTimerValue = timerVal;
}

function rotateContent( rotDirection, rotReset )
{
    if ( rotActive )
        return;
    rotActive = true;

	var ulobj=document.getElementById(rotElement);
	var ulist=ulobj.getElementsByTagName("li");
	var oldIdx;

    if ( rotReset == 'reset' )
    {
		for (var l=0; l<ulist.length; l++)
			document.getElementById(ulist[l].getElementsByTagName("a")[0].getAttribute("rel")).style.display="none";

        rotFrameIdx = ulist.length-1;
	}

    oldIdx = rotFrameIdx;
    rotFrameIdx += rotDirection;
	if ( rotFrameIdx >= ulist.length )
		rotFrameIdx = 0;
	if ( rotFrameIdx < 0 )
		rotFrameIdx = ulist.length-1;

	document.getElementById(ulist[oldIdx].getElementsByTagName("a")[0].getAttribute("rel")).style.display="none";
	document.getElementById(ulist[rotFrameIdx].getElementsByTagName("a")[0].getAttribute("rel")).style.display="block";

    rotActive = false;
}

function rotateByTimer()
{
    if ( rotActive || rotPaused )
        return;
    rotateContent( 1 );
}

function rotateStart()
{
    rotPaused = false;
    if ( rotTimerID == null )
	    rotTimerID = setInterval( 'rotateByTimer()', rotTimerValue );
}

function rotateStop()
{
    rotPaused = true;
    if ( rotTimerID != null )
    {
	    clearInterval( rotTimerID );
        rotTimerID = null;
    }
}

function rotateToggle()
{
    if ( rotPaused )
        rotateStart();
    else
        rotateStop();
}

function rotateAction( rotDir )
{
    rotateStop();
    rotateContent( rotDir );
}

function rotateForward()
{
    rotateAction( 1 );
}

function rotateBackward()
{
    rotateAction( -1 );
}

