function diaporama(id, largeur, hauteur) {
	
	
	document.getElementById(id).style.width  = largeur+'px';
	document.getElementById(id).style.height = hauteur+'px';
	
	var elementParent = document.getElementById(id);
	decalagex = decalagey = 0;
	var chaineOrdre = '';
	
	for(var i=0; i<nbImages; i++) {
		
		var img = document.createElement('img');
		elementParent.appendChild(img);
		img.setAttribute('id', 'diapo_'+i);
		img.setAttribute('src', 'gd.resize.diaporama.php?img='+diapo[i]+'&type='+type[i]);
		img.style.display = 'block';
		img.style.position = 'absolute';
		
		chaineOrdre += i;
		if(i != nbImages-1) chaineOrdre += '-';
	}
	
	animer(chaineOrdre);
}

// est appelée par opacifier()
function animer(ordre) {
	
	var indice = ordre.split('-');
	var zIndex = nbImages+1;
	
	for(var i=0; i<nbImages; i++) {
		
		var diapo = document.getElementById('diapo_'+indice[i]);
		diapo.style.zIndex = zIndex;
		diapo.style.opacity = 1;
		diapo.style.filter = "alpha(opacity:100)";
		
		zIndex = zIndex - 1;
	}
	
	// ~ Récursion...
	setTimeout(function() {opacifier(indice[0], 1, ordre)}, duree);
}


// est appelée par animer()
function opacifier(num, opaciteImage, ordre) {
	
	diapoPremierPlan = document.getElementById('diapo_'+num);
	
	diapoPremierPlan.style.opacity = opaciteImage;
	
	opaciteImageIE = opaciteImage * 100;
	diapoPremierPlan.style.filter = "alpha(opacity:"+opaciteImageIE+")";
	
	// Baisser l'opacité de l'image au premier plan
	if(opaciteImage > 0) {
		
		opaciteImage = opaciteImage - 0.01;
		
		setTimeout(function() {opacifier(num, opaciteImage, ordre)}, '10');
	}
	// une fois que cette opacité est nulle, on réordonne... et on repart pour un tour
	else {
		
		var nouvelOrdre = ordonner(ordre);
		// ~ Récursion...
		setTimeout(function() {animer(nouvelOrdre)}, duree);
	}
}


function ordonner(ordre) {
	
	var tableauOrdre = ordre.split('-');
	var indice;
	var chaine = '';
	
	for(var i=0; i<nbImages; i++) {
		
		indice = (tableauOrdre[i] != nbImages -1) ? Number(tableauOrdre[i]) + Number(1) : 0;
		
		chaine += indice;
		if(i != nbImages-1) chaine += '-';
		
	}
	return chaine;
}