var interval = 15; //In seconds

var rotatingImages = new Array();
var caption;
var numpics;
var curpic;
var run;
var lastTimeoutID;

window.onload = init;

function init(){
    interval *= 1000;
    if(document.getElementById('ri_first')){
        document.getElementById('ri_first').style.display='none';
    }
    caption = document.getElementById('rotimgcaption');
    var images = document.getElementsByTagName('img');
    for(var i=0; i<images.length; i++){
        if(images[i].className == 'rotimg'){
            images[i].style.display = 'none'; 
            rotatingImages.push(images[i]);
        }
    }
    numpics = rotatingImages.length;
    curpic = Math.round(Math.random() * (numpics-1));
    document.getElementById('ctrlbuttons').style.display = 'block';
    startPlay();
}

function nextImage(){
    if(run){
        var oldpic = curpic;
        if(curpic == numpics-1)
            curpic=0;
        else
            curpic++;
        changeImage(oldpic, curpic);
    }
}

function previousImage(){
    if(run){
        var oldpic = curpic;
        if(curpic == 0)
            curpic=numpics-1;
        else
            curpic--;
        changeImage(oldpic, curpic);
    }
}

function changeImage(oldImg, newImg){
    rotatingImages[oldImg].style.display = 'none';
    rotatingImages[newImg].style.display = 'block';
    caption.innerHTML = rotatingImages[newImg].alt;
}

function nextOne(){
    run = true;
    nextImage();
    stopPlay();
}

function previousOne(){
    run = true;
    previousImage();
    stopPlay();
}

function play(){
    nextImage();
    if(run){
        lastTimeoutID = setTimeout('play()', interval);
    }
}

function stopPlay(){
    run = false;
    clearTimeout(lastTimeoutID);
}

function startPlay(){
    if(!run){ //Otherwise no need to do anything;
    	run = true;
    	play();
    }
}