
var slideshows = new Array();

var currentSlideshow = null;
var currentSlideshowName = null;

function createSlideshow()
{
    currentSlideshowName = 'slideshow' + Math.random();
    
    currentSlideshow = new Array();
    slideshows[currentSlideshowName] = currentSlideshow;
}

function addToSlideshow(element)
{
    element.style.visibility = 'hidden';
    element.style.display = 'none';

    currentSlideshow.push(element);
}

function startSlideshow(delay)
{
    var element = currentSlideshow.shift();
    currentSlideshow.unshift(element);
    
    element.style.visibility = 'visible';
    element.style.display = '';

    setTimeout('runSlideshow(\''+currentSlideshowName+'\', '+delay+');', delay);
    
    currentSlideshow = null;
    currentSlideshowName = null;
}

function runSlideshow(slideshowName, delay)
{
    var s = slideshows[slideshowName];
 
    if (s)
    {   
	    var element = s.shift();
	    s.push(element);
	
	    element.style.visibility = 'hidden';
	    element.style.display = 'none';
	    
	    element = s.shift();
	    s.unshift(element);
	    
	    element.style.visibility = 'visible';
	    element.style.display = '';
	
	    setTimeout('runSlideshow(\''+slideshowName+'\', '+delay+');', delay);
	}
}

function stopSlideshows()
{
    for (var i = 0; i < slideshows.length; i++)
        slideshows[i] = null;
        
    slideshows = new Array();
}