var targetPositions = new Array();
var timer = false;

function refresh()
{
    var needToCallAgain = false;

    for ( var i = 0; i < targetPositions.length; i++ )
    {
        var banner = document.getElementById( 'banner-' + i );
        var currentPos = ( banner.style.left )? parseInt( banner.style.left ): 80 * i;
        var newPos = ( 2 * currentPos + targetPositions[i] ) / 3;

        if ( Math.abs( newPos - targetPositions[i] ) < 2 )
        {
            newPos = targetPositions[i];
        }

        if ( newPos != currentPos )
        {
            needToCallAgain = true;
            banner.style.left = newPos + 'px';
        }
    }

    if ( needToCallAgain )
    {
        timer = setTimeout( "refresh()", 50 );
    }
    else
    {
        timer = false;
    }
}

function activate( id )
{
    var i = 0, banner;
    while ( banner = document.getElementById( 'banner-' + i ) )
    {
        targetPositions[i] = 80 * i;
        if ( i > id )
        {
            targetPositions[i] += banner.offsetWidth - 80;
        }

        i++;
    }

    if ( !timer )
    {
        timer = setTimeout( "refresh()", 50 );
    }
}
