// JavaScript Document

// Librairie de gestion du caroussel

// fonction qui lance le caroussel : 
// la première image est affichée normalement sur la page
// et l'affichage du bandeau est lancé après un temps défini
// correspondant au temps d'apparition du dit bandeau
function start_slide(slide, delay, time_effect, start_slide, end_slide) {
	setTimeout(function() { bando_up(slide, delay, time_effect, start_slide, end_slide);}, time_effect*1000);
}

// Affiche le slide, puis lance la fonction d'affichage du bandeau après time_effect*1000 sec
function slide_appear(slide, delay, time_effect, start_slide, end_slide){ 
	$("slideshow" + slide).appear({ duration : time_effect });
	setTimeout(function() { bando_up(slide, delay, time_effect, start_slide, end_slide) }, time_effect*1000);
}

// Masque le slide courant, incrémente slide et lance la fonction de masquage de la slide après time_effect * 1000 sec
// coresspondait à la durée de l'effet de disparition
function slide_fade(slide, delay, time_effect, start_slide, end_slide) {
	$("slideshow" + slide).fade({ duration : time_effect });
	next_slide = (slide == end_slide) ? start_slide : slide + 1;
	setTimeout(function() {slide_appear(next_slide, delay, time_effect, start_slide, end_slide);}, time_effect * 1000);
}

// Rempli et affiche le bando si test_bando renvoie true
// dans tous les cas, lance la fonction de masquage après delay / 1000 sec
function bando_up(slide, delay, time_effect, start_slide, end_slide){
	if(test_bando(slide)){
		fill_bando(slide);
		new Effect.SlideUpIn("slide_bando", {duration: time_effect});
	}
	setTimeout(function() { bando_down(slide, delay, time_effect, start_slide, end_slide); }, delay);
}

// masque le bandeau, puis appelle la fonction de disparition de la slide après time_effect * 1000 sec
function bando_down(slide, delay, time_effect, start_slide, end_slide) {
	if(test_bando(slide)) {
		new Effect.SlideDownOut("slide_bando", {duration: time_effect});
	}
	setTimeout(function() { slide_fade(slide, delay, time_effect, start_slide, end_slide); }, time_effect*1000);
}

// test si la slide contient des infos à afficher
function test_bando(slide){
	if(Slides[slide].titre != "" && Slides[slide].content != "") {
		return true;
	}
	else {
		return false;
	}
}

// Rempli le bandeau
function fill_bando(slide) {
	document.getElementById("slide_bando_titre").innerHTML = Slides[slide].titre;
	document.getElementById("slide_bando_content").innerHTML = Slides[slide].content;
}