/*
*	Menu accordéon
*	Développeur : Anthony MICHEL
*	Fonctions : 
*		- menu(id) : fonction qui permet de détecter l'id du menu à fermer (si il y en a un), et de lancer l'ouverture du menu souhaité
*		- fermeToi(id_menu_ouvert, id_a_ouvrir) : permet de fermer le menu donc l'id est passé en paramètre (id_menu_ouvert) et d'ouvrir le menu souhaité (id_a_ouvrir)
*		- ouvreToi(id) : permet d'ouvrir le menu dont l'id est passé en paramètre
*/

// Tableau des menus qui géreront l'accordéon
tabMenus = new Array('nosproduits');
// Timer de fermeture
var monTimer = 0;
// Timer d'ouverture
var monTimer2 = 0;
// Nombre de pixels pour l'ouverture/fermeture
var pixel = 11;
// Hauteur d'une ligne (en pixel)
var ligne = 28;

function menu(id)
{
	var id_menu_ouvert = '';
	
	// On cherche l'id du menu qui est est ouvert
	for(var i = 0; i < tabMenus.length; i++)
	{
		if(parseInt(document.getElementById(tabMenus[i]).style.height) > 1)
		{
			id_menu_ouvert = tabMenus[i];
		}
	}
	
	// Si le menu ouvert est celui sur lequel on a cliqué, on le referme
	if(id_menu_ouvert == id)
	{
		monTimer = window.setInterval('fermeToi("'+id_menu_ouvert+'", "")', 10);
	}
	// Sinon si il y a un menu ouvert, autre que celui sur lequel on a cliqué, on va le fermer
	else if(id_menu_ouvert != '')
	{
		monTimer = window.setInterval('fermeToi("'+id_menu_ouvert+'", "'+id+'")', 10);
	}
	// Sinon, il n'y a aucun menu d'ouvert, donc on ouvre celui sur lequel on a cliqué
	else
	{
		monTimer2 = window.setInterval('ouvreToi("'+id+'")', 10);
	}
}

function fermeToi(id_menu_ouvert, id_a_ouvrir)
{
	// On récupère l'élément à fermer
	var element = document.getElementById(id_menu_ouvert);
	
	// Si sa hauteur est supérieure à 1px, on va la diminuer de x pixels (variable pixel)
	if(parseInt(element.style.height) > 1)
	{
		element.style.height = (parseInt(element.style.height)-pixel)+'px';
	}
	// Sinon, on arrête le timer, et on ouvre le menu à ouvrir si il y en a un
	else
	{
		window.clearInterval(monTimer);	
		if(id_a_ouvrir != '')
		{
			monTimer2 = window.setInterval('ouvreToi("'+id_a_ouvrir+'")', 10);
		}
	}
}

function ouvreToi(id)
{
	// On récupère l'élément à ouvrir
	var element = document.getElementById(id);
	// On récupère le tableau contenant les sous-catégories qui vont dérouler
	var tableau = document.getElementById('table'+id);
	// On compte le nombre de sous-catégories
	var nb_td = tableau.getElementsByTagName('td').length;
	
	// Si la hauteur du menu est inférieure au nombre de sous-catégorie*la hauteur d'une ligne, on augmente la hauteur du div de x pixels (variable pixel)
	if(parseInt(element.style.height) < (nb_td*ligne)+1)
	{
		element.style.height = (parseInt(element.style.height)+pixel)+'px';
	}
	// Sinon on arrête le timer
	else
	{
		window.clearInterval(monTimer2);	
	}
}
