// Déclarations de variables globales
var cabine,contenu;
var delta_x,delta_y;
var hauteurTotale,hauteurAscenseur,cran;
var axe="f";
var ie = (document.all)? true:false;
var limy1,limy2,limx1,limx2;

function ascenseur(e,cab,cont,a,lim1,lim2) {
	axe=a;
	cabine = cab;
	contenu = cont;	
	
	if(contenu.offsetHeight>lim2)
	{
		hauteurTotale = contenu.offsetHeight-contenu.offsetParent.offsetHeight;
		//alert(lim1+','+lim2)
		hauteurAscenseur = lim2-lim1-cabine.offsetHeight;
		cran = hauteurTotale/hauteurAscenseur;
		
		if (axe=="y") {
			limy1 = lim1;
			limy2 = lim2;	
		} else {
			limx1 = lim1;
			limx2 = lim2;	
		}
			
		if (ie) document.onmouseup = cabine_stop_drag;
		else window.onmouseup = cabine_stop_drag;
		
		switch(e.type) {
			case "mousedown" :
				document.onmousemove = cabine_drag_drop;
				if (ie) {
					delta_x= event.clientX-cabine.offsetLeft;
					delta_y= event.clientY-cabine.offsetTop;
				} else {
					delta_x= e.clientX-cabine.offsetLeft;
					delta_y= e.clientY-cabine.offsetTop;
				}
				break;
		}
	}
}

function deplace_ascenceur()
{
	contenu.style.top = '0px';
	cabine.style.top = '0px';
}
		
function cabine_stop_drag() {
	//document.getElementById('debug').innerHTML+='<br>--STOP--<br>'
	document.onmousemove = null;
	if (ie) document.onmouseup = null;
	else window.onmouseup = null;
	//cabine.style.border='2px solid white';
	axe="f";
}

function cabine_drag_drop(e) {
	//cabine.style.cursor='move';	
	if(ie) {
		if (axe=="y") {
			if((event.clientY-delta_y+cabine.offsetHeight)>=limy2) cabine.style.top = limy2-30;
			else if((event.clientY-delta_y)<=limy1) cabine.style.top = limy1
				  else cabine.style.top = (event.clientY-delta_y)+'px';
			contenu.style.top = -(cabine.offsetTop*cran)+'px';
		}
	} else {
		if (axe=="y") {
			if((e.clientY-delta_y+cabine.offsetHeight)>=(limy2) ) {
				cabine.style.top = (limy2-30)+'px';
				//document.getElementById('debug').innerHTML+='<br>1: '+cabine.offsetTop;
			} else if((e.clientY-delta_y)<=limy1) 
						cabine.style.top = limy1
				  	else 
				  		cabine.style.top = (e.clientY-delta_y)+'px';
			//document.getElementById('debug').innerHTML+='<br>2: '+cabine.offsetTop;
			contenu.style.top = -(cabine.offsetTop*cran)+'px';
		}
	}
}

var intervalFleche;
function goDownUp(num,cab,cont,a,lim1,lim2) {
	axe=a;
	cabine = cab;
	contenu = cont;	
	hauteurTotale = contenu.offsetHeight-contenu.offsetParent.offsetHeight;
	hauteurAscenseur = lim2-lim1-cabine.offsetHeight;
	cran = hauteurTotale/hauteurAscenseur;
	intervalFleche = setInterval(function(){deplace(num,cab,cont,lim1,lim2,cran);},100)
}

function deplace(num,cab,cont,lim1,lim2,cran) {
	
	if(num>0)
	{
		if((contenu.offsetTop+contenu.offsetHeight)>(lim2+60))
		{
			cabine.style.top = (cabine.offsetTop+10)+'px';
			contenu.style.top = -(cabine.offsetTop*cran)+'px';
		}
		else
		{
			cabine.style.top = (lim2-30)+'px';
			contenu.style.top = -(cabine.offsetTop*cran+30)+'px';
			clearInterval(intervalFleche)
		}
	}
	else
	{
		//document.getElementById('debug').innerHTML+=contenu.offsetTop+'-->lim1='+lim1;
		if(contenu.offsetTop<(lim1-60))
		{
			cabine.style.top = (cabine.offsetTop-10)+'px';
			contenu.style.top = -(cabine.offsetTop*cran)+'px';
		}
		else
		{
			cabine.style.top = '0px';
			contenu.style.top = -(cabine.offsetTop*cran)+'px';
			clearInterval(intervalFleche)
		}
	}
	return false;
}
/****************************FIN FONCTION DRAG AND DROP*/
/****************************FIN FONCTION DRAG AND DROP*/
/****************************FIN FONCTION DRAG AND DROP*/
