function showfestival(element, max){
	//recherche du div du mois en rapport avec le div du festival en over
	elements = element.parentNode.getElementsByTagName("div");
	//alert(elements.length);
	
	//si le nombre est <= max //3 pour l'instant
	if(elements.length <= max){
		//on doit tous les laisser ouvert
	}else{
		pos = -1;
		//on les ferme tous
		for(x = 0; x < elements.length; x++){
			elements[x].className = "hidden";
			//trouver la position de celui en over
			if(elements[x] == element) pos = x;
		}
		
		//selon la position de celui en over ...
		//alert(pos < max);
		
		//si la position de l'over est < max-1
		if(pos < max){
			//ouvrir du premier jusqu'a max-1
			for(x = 0; x < max; x++){
				elements[x].className = "";
			}
		}else{//sinon si la position de l'over est >= max
			//ouvre lui en over
			elements[pos].className = "";
			//et le nombre(max-1) de précédents
			for(x = pos-1; x > (pos-max); x--){
				elements[x].className = "";
			}
		}
	}	
}

/*function move(element, direction){
	div = element.parentNode.parentNode;
	value = parseInt(div.style.marginLeft);
	newvalue = (direction == "left")?(value - 204)+"px":(value + 204)+"px";
	div.style.marginLeft = newvalue;
}*/

var thediv = null;
var speed = 12; //12px
var limit = -1;
var direction = "";
var timer = null;

function startmove(element, dir){
	//dont start move if already moving
	if(direction == ""){
		thediv = document.getElementById("globalfestival");
		value = parseInt(thediv.style.marginLeft);
		//alert(value); //-816 // -812
		
		//keep the limit
		switch(dir){
			case "left":
				limit = value - 204;
				break;
			case "right":
				limit = value + 204;
				break;
		}
		direction = dir;
		
		timer = setTimeout("move()", 1);
	}
}

function move(){
	//go to the limit by scale
	if(parseInt(thediv.style.marginLeft) != limit){
		value = parseInt(thediv.style.marginLeft);
		switch(direction){
			case "left":
				newvalue = value - speed;
				break;
			case "right":
				newvalue = value + speed;
				break;
		}
		thediv.style.marginLeft = newvalue + "px";
		//recall
		timer = setTimeout("move()", 1);
	}else{
		//try to set the pos to a good point
		//alert(parseInt(thediv.style.marginLeft) + " " + (parseInt(thediv.style.marginLeft) % 204));
		/*while(parseInt(thediv.style.marginLeft) % 204 != 0){
			switch(direction){
				case "left":
					newvalue = parseInt(thediv.style.marginLeft) + 1; //inverse
					break;
				case "right":
					newvalue = parseInt(thediv.style.marginLeft) - 1;
					break;
			}
			thediv.style.marginLeft = newvalue + "px";
		}*/
		//stop moving
		stopmove();
	}
}

function stopmove(){
	clearTimeout(timer); //to be sure for what ??? it's a timeout, not interval
	direction = "";
	limit = -1;
	thediv = null;
}