var slideshow = new Array();
var buffer = new Image;
var text = "";
var timeId = null;
var id = 0;


function gallerynextTimedSlide () {
    if (action == "play") {
			SlideTooltip(slideshow[counter]['description']);
			toggleTooltip('off');
			if (slideshow[counter]['description']){
				toggleTooltip();
			}
        counter++;
        if (counter >= slideshow.length) {
            counter = 0;
        }
        preloadSlide (counter);
        timeId = setTimeout ("displayBuffer("+counter+")", timeout);

    }
}

function nextTimedSlide () {
    if (action == "play") {
        counter++;
        if (counter >= slideshow.length) {
            counter = 0;
        }
        preloadSlide (counter);
        timeId = setTimeout ("displayBuffer("+counter+")", timeout);
    }
}

function nextSlide () {
    if (action == "play") {
       counter++;
        if (counter >= slideshow.length) {
            counter = 0;
        }
        loadSlide (counter);
			setSquare(counter);
        clearTimeout (timeId);
    }
}

function gallerymoveSlide(sens) {
   if (action != "play") {
        counter += sens;
        if (counter < 0) {
            counter = slideshow.length-1;
        } else if (counter >= slideshow.length) {
				counter = 0;
        }
			SlideTooltip(slideshow[counter]['description']);
			toggleTooltip('off');
			if (slideshow[counter]['description']){
				toggleTooltip();
			}
			document.getElementById("slide").src = slideshow[counter]['file'];
			setSquare(counter);
			clearTimeout (timeId);

   }
}

function moveSlide(sens) {
   if (action != "play") {
        counter += sens;
        if (counter < 0) {
            counter = slideshow.length-1;
        } else if (counter >= slideshow.length) {
				counter = 0;
        }
			document.getElementById("slide").src = slideshow[counter]['file'];
			setSquare(counter);
			clearTimeout (timeId);
   }
}

function loadSlide (slideNum) {
    if (action == "play") {
        document.getElementById("slide").src = slideshow[slideNum]['file'];

      slideNumber = slideNum + 1;
		id = slideNum;
    }
}

function displayBuffer (slideNum) {
    if (action == "play") {
		slideNumber = slideNum + 1;
       document.getElementById("slide").src = buffer.src;
  		setSquare(counter);
		id = slideNum;
    }
}
/*function just to use with louismalle*/
function gallerydisplaySlide (slideNum) 
{
	SlideTooltip(slideshow[slideNum]['description']);
	toggleTooltip('off');
	if (slideshow[slideNum]['description']){
				toggleTooltip();
	}
	id = slideNum;
	preloadSlide(slideNum);
	action = "play";
	displayBuffer(slideNum);
	action = "stop";
	setSquare(slideNum);
}

function displaySlide (slideNum) 
{
	id = slideNum;
	preloadSlide(slideNum);
	action = "play";
	displayBuffer(slideNum);
	action = "stop";
	setSquare(slideNum);
}

/* reset all the square state .. and enable the one which is active :) */
function setSquare(slideNum) 
{
	id = slideNum;
	nodeList = document.getElementById("squares").childNodes;
	var j = 0;
	for (var i=0; i < nodeList.length; ++i) {
		if (nodeList.item(i).nodeName == "IMG") {
			if (j == slideNum) {
				nodeList.item(i).src = "themes/default/images/nav/icon_active.jpg";
			} else {
				nodeList.item(i).src = "themes/default/images/nav/icon_passive.jpg";
			}
			++j;
		}
	}
}
function stopSlideshow () {
	 document.getElementById("ssbutton").src = "themes/default/images/nav/slideshow.jpg";
    if (action != "stop") {
        loadSlide (begin);
        action = "stop";
        counter = begin;
        clearTimeout (timeId);
    }
}
function pauseSlideshow () {
	 document.getElementById("ssbutton").src = "themes/default/images/nav/slideshow.jpg";
    if (action == "play") {
        action = "pause";
        clearTimeout (timeId);
    }
		counter--;
}

function playSlideshow () {
    if (action != "play") {
			document.getElementById("ssbutton").src = "themes/default/images/nav/slideshow_active.jpg";
        action = "play";
        nextSlide ();
    } else {
		pauseSlideshow();
    }
}

function preloadSlide (slideNum) {
   buffer.src = slideshow[slideNum]['file'];
}

function slideGetUrl () {
 /*   window.location = slideshow[counter-1]['url'];*/
}

