var timerlen = 5;
var slideAniLen = 250;

var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endHeight = new Array();
var moving = new Array();
var dir = new Array();

function slidedown(objname){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display != "none")
                return; // cannot slide down something that is already visible

        moving[objname] = true;
        dir[objname] = "down";
        startslide(objname);
}

function slideup(objname){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display == "none")
                return; // cannot slide up something that is already hidden

        moving[objname] = true;
        dir[objname] = "up";
        startslide(objname);
}

function startslide(objname){
        obj[objname] = document.getElementById(objname);

        endHeight[objname] = parseInt(obj[objname].style.height);
        startTime[objname] = (new Date()).getTime();

        if(dir[objname] == "down"){
                obj[objname].style.height = "1px";
        }

        obj[objname].style.display = "block";

        timerID[objname] = setInterval('slidetick(\'' + objname + '\');',timerlen);
}

function slidetick(objname){
        var elapsed = (new Date()).getTime() - startTime[objname];

        if (elapsed > slideAniLen)
                endSlide(objname)
        else {
                var d =Math.round(elapsed / slideAniLen * endHeight[objname]);
                if(dir[objname] == "up")
                        d = endHeight[objname] - d;

                obj[objname].style.height = d + "px";
        }

        return;
}

function endSlide(objname){
        clearInterval(timerID[objname]);

        if(dir[objname] == "up")
                obj[objname].style.display = "none";

        obj[objname].style.height = endHeight[objname] + "px";

        delete(moving[objname]);
        delete(timerID[objname]);
        delete(startTime[objname]);
        delete(endHeight[objname]);
        delete(obj[objname]);
        delete(dir[objname]);

        return;
}

function toggleSlide(objname){
	if (objname=='yellowbloc'){
		if(document.getElementById(objname).style.display == "none"){
		// div is hidden, so let's slide down
		slidedown(objname);
		}else{
		// div is not hidden, so slide up
		slideup(objname);
		}
		if (document.getElementById('ban').style.display == 'block')
		{
			document.getElementById('ban').style.display = 'none';
			document.getElementById('contact_bleu').style.display 	 	= 'none';
			document.getElementById('newsletter_bleu').style.display 	= 'none';
			document.getElementById('monespace_bleu').style.display  	= 'none';
			document.getElementById('panier_bleu').style.display  		= 'none';
			document.getElementById('contact_orange').style.display 	= 'block';
			document.getElementById('newsletter_orange').style.display 	= 'block';
			document.getElementById('monespace_toggled').style.display  = 'block';
			document.getElementById('panier_orange').style.display  	= 'none';
		}
		else 
		{
			document.getElementById('ban').style.display = 'block';	
			document.getElementById('contact_bleu').style.display 	 	= 'block';
			document.getElementById('newsletter_bleu').style.display 	= 'block';
			document.getElementById('monespace_bleu').style.display  	= 'block';
			document.getElementById('panier_bleu').style.display  		= 'block';
			document.getElementById('contact_orange').style.display 	= 'none';
			document.getElementById('newsletter_orange').style.display 	= 'none';
			document.getElementById('monespace_toggled').style.display  = 'none';
			document.getElementById('panier_orange').style.display 		= 'none';
		}
	}
	else { //Lexique
		if ((document.getElementById('a').style.display == 'block') && (objname != 'a')) {slideup('a'); slidedown(objname);}
		if ((document.getElementById('b').style.display == 'block') && (objname != 'b')) {slideup('b'); slidedown(objname);}
		if ((document.getElementById('c').style.display == 'block') && (objname != 'c')) {slideup('c'); slidedown(objname);}
		if ((document.getElementById('d').style.display == 'block') && (objname != 'd')) {slideup('d'); slidedown(objname);}
		if ((document.getElementById('e').style.display == 'block') && (objname != 'e')) {slideup('e'); slidedown(objname);}
		if ((document.getElementById('f').style.display == 'block') && (objname != 'f')) {slideup('f'); slidedown(objname);}
		if ((document.getElementById('g').style.display == 'block') && (objname != 'g')) {slideup('g'); slidedown(objname);}
		if ((document.getElementById('h').style.display == 'block') && (objname != 'h')) {slideup('h'); slidedown(objname);}
		if ((document.getElementById('i').style.display == 'block') && (objname != 'i')) {slideup('i'); slidedown(objname);}
		if ((document.getElementById('j').style.display == 'block') && (objname != 'j')) {slideup('j'); slidedown(objname);}
		if ((document.getElementById('k').style.display == 'block') && (objname != 'k')) {slideup('k'); slidedown(objname);}
		if ((document.getElementById('l').style.display == 'block') && (objname != 'l')) {slideup('l'); slidedown(objname);}
		if ((document.getElementById('m').style.display == 'block') && (objname != 'm')) {slideup('m'); slidedown(objname);}
		if ((document.getElementById('n').style.display == 'block') && (objname != 'n')) {slideup('n'); slidedown(objname);}
		if ((document.getElementById('o').style.display == 'block') && (objname != 'o')) {slideup('o'); slidedown(objname);}
		if ((document.getElementById('p').style.display == 'block') && (objname != 'p')) {slideup('p'); slidedown(objname);}
		if ((document.getElementById('q').style.display == 'block') && (objname != 'q')) {slideup('q'); slidedown(objname);}
		if ((document.getElementById('r').style.display == 'block') && (objname != 'r')) {slideup('r'); slidedown(objname);}
		if ((document.getElementById('s').style.display == 'block') && (objname != 's')) {slideup('s'); slidedown(objname);}
		if ((document.getElementById('t').style.display == 'block') && (objname != 't')) {slideup('t'); slidedown(objname);}
		if ((document.getElementById('u').style.display == 'block') && (objname != 'u')) {slideup('u'); slidedown(objname);}
		if ((document.getElementById('v').style.display == 'block') && (objname != 'v')) {slideup('v'); slidedown(objname);}
		if ((document.getElementById('w').style.display == 'block') && (objname != 'w')) {slideup('w'); slidedown(objname);}
		if ((document.getElementById('x').style.display == 'block') && (objname != 'x')) {slideup('x'); slidedown(objname);}
		if ((document.getElementById('y').style.display == 'block') && (objname != 'y')) {slideup('y'); slidedown(objname);}
		if ((document.getElementById('z').style.display == 'block') && (objname != 'z')) {slideup('z'); slidedown(objname);}
		
		if(document.getElementById(objname).style.display == "none"){
			// div is hidden, so let's slide down
			slidedown(objname);
		}else{
			// div is not hidden, so slide up
			slideup(objname);
		}
	}
  
}
