function imgsuivant(duree,image,force){
	
	clearInterval(inter);
	
	suivant = calcSuivant(image);
		
	if(force == 1){
		if(enCours == 1){	
			if(arret == 0){		
				arret = 1;
				clearTimeout(timeout);	
				if(image == 'suivant'){		
					setTimeout(function(){
						setOpacity(document.getElementById('image_diapo'+suivant),1);
						setOpacity(document.getElementById('image_diapo'+actuel),0);
					    document.getElementById('image_diapo'+suivant).style.zIndex=0;				
					    arret = 0;					
					    actuel = suivant;
					    enCours = 0;
					},50);
				}
				if(image == 'precedent'){	
					if(image == 'precedent')	
						suivant +=2;
					setTimeout(function(){
						setOpacity(document.getElementById('image_diapo'+suivant),0);
						setOpacity(document.getElementById('image_diapo'+actuel),1);
					    document.getElementById('image_diapo'+suivant).style.zIndex=0;				
					    arret = 0;		
					    enCours = 0;
					},50);
				}
			}
		}else{	
			setOpacity(document.getElementById('image_diapo'+suivant),1);
			setOpacity(document.getElementById('image_diapo'+actuel),0);
			actuel = suivant;
		}		
	}else{		
	
		enCours = 1;
		
		document.getElementById('image_diapo'+suivant).style.zIndex=1;
		
		
		fondu(document.getElementById('image_diapo'+actuel),1,0,duree);
		fondu(document.getElementById('image_diapo'+suivant),0,1,duree);	
			
		timeout = setTimeout(function(){	
			setOpacity(document.getElementById('image_diapo'+suivant),1);
			setOpacity(document.getElementById('image_diapo'+actuel),0);
			document.getElementById('image_diapo'+suivant).style.zIndex=0;
			actuel = suivant;
			enCours = 0;
		},duree);	
	}	
		
	defilementAuto();
	
}

function setOpacity(elem, value) {
	value = (value == 1)?0.99999:value;

	elem.style.opacity = value;
	elem.style.filter = 'alpha(opacity=' + value*100 + ')';
	elem.style.MozOpacity = value;
	elem.style.KhtmlOpacity = value;
}

function fade (elem, to, from, options) {
	
	var st = elem.style;
	
	var duration = options.duration;
	var frameRate = options.frameRate;
	
	var totalFrames = Math.ceil(duration/1000*frameRate);
	var perFrame = (to-from)/totalFrames;
	var frameNb = 0;
	
	var self = this;

    next = function(){setTimeout(function(){self.frame();},1000/frameRate);};
		
	this.frame = function () {
		setOpacity(elem, from + perFrame*frameNb);
		
        if (frameNb===totalFrames){
			setOpacity(elem,to);
        }else{
        	if(arret == 0){
            	frameNb++;
            	next();
            }
        }
	};
	
	next();
}

function fondu(element,debut,fin,duree){
	fade(element,fin,debut,{duration : duree,frameRate : 20});
}

function activerBouton(){
	document.getElementById('suivDiapo').onclick = function(){imgsuivant();};
	document.getElementById('precDiapo').onclick = function(){imgprecedent();};
}
