/*
			plan.js : routines javascript animation de la page plan

/**************  ouverture/fermeture des éléments du plan *****************/
var mouvementPlan=false;
var freqPlan=20;
var pasPlan=40;

function swapplan(id) {
  if (mouvementPlan) {return;}   //déja occupé !!!
  var image;
  //récupération de l'image d'id "rond"+id
  image=document.getElementById("rond"+id);
  if (image.name=="ferme") {
  	ouvrirSecteurPlan(id);
  } else {
  	fermerSecteurPlan(id);
  }
}

function ouvrirSecteurPlan(id) {
  var conteneur,image,elemUL;
  //récupération de l'élément div conteneur d'id "conteneur"+id
  conteneur=document.getElementById("conteneur"+id);
  if (conteneur==null) {return;}
  //récupération de l'image d'id "rond"+id
  image=document.getElementById("rond"+id);
  image.src="_dev/mesimages/rondouvert.gif";
  image.name="ouvert";
  
  elemUL=conteneur.getElementsByTagName("UL")[0];
  deplierPlan(id,0,elemUL.offsetHeight,freqPlan,pasPlan);
}

function deplierPlan(id,haut,hautMax,frequence,pas) {
	var conteneur=document.getElementById("conteneur"+id);
	var elemInterieur=conteneur.getElementsByTagName("UL")[0];
	if (elemInterieur.hasChildNodes()) {
		mouvementPlan=true;
		conteneur.style.height=(haut+pas)+"px";
		elemInterieur.style.top=-(hautMax-haut-pas)+"px";
		elemInterieur.style.clip="rect(" + (hautMax-haut-pas) +"px auto " + hautMax +"px auto)";
		if (haut<hautMax-pas) {
			setTimeout("deplierPlan("+id+","+(haut+pas)+","+hautMax+","+frequence+","+pas+")",frequence);
		} else {
			conteneur.style.height=(hautMax)+"px";
			elemInterieur.style.top="0px";
			elemInterieur.style.clip="rect(0px auto " + hautMax +"px auto)";
			mouvementPlan=false;
		}
	}
}

function fermerSecteurPlan(id) {
  var conteneur,image,elemUL;
  //récupération de l'élément div conteneur d'id "conteneur"+id
  conteneur=document.getElementById("conteneur"+id);
  if (conteneur==null) {return;}
  //récupération de l'image d'id "rond"+id
  image=document.getElementById("rond"+id);
  image.src="_dev/mesimages/rondferme.gif";
  image.name="ferme";
  
  elemUL=conteneur.getElementsByTagName("UL")[0];
  replierPlan(id,elemUL.offsetHeight,elemUL.offsetHeight,freqPlan,pasPlan);
}

function replierPlan(id,haut,hautMax,frequence,pas) {
	var conteneur=document.getElementById("conteneur"+id);
	var elemInterieur=conteneur.getElementsByTagName("UL")[0];
	if (elemInterieur.hasChildNodes()) {
		mouvementPlan=true;
		if (haut>pas) {
			conteneur.style.height=(haut-pas)+"px";
		} else {
			conteneur.style.height=0+"px";
		}
		elemInterieur.style.top=-(hautMax-haut+pas)+"px";
		elemInterieur.style.clip="rect(" + (hautMax-haut+pas) +"px auto " + hautMax +"px auto)";
		if (haut>2*pas) {
			setTimeout("replierPlan("+id+","+(haut-pas)+","+hautMax+","+frequence+","+pas+")",frequence);
		} else {
			conteneur.style.height="0px";
			elemInterieur.style.top="0px";
			elemInterieur.style.clip="rect(0px auto 0px auto)";
			mouvementPlan=false;
		}	
	}
}
