// JavaScript Document
// JavaScript Document
// Raccourci et création d'un objet
var d = document,
	o = {};
var timer;
var monsujet;
var monsujet2;
//précharche image menu
var imageList = new Array;
imageList[0] = new Image();
imageList[1] = new Image();
imageList[2] = new Image();
imageList[0].src = "images/sousmenubas.gif";
imageList[1].src = "images/sousmenuhaut.gif";
imageList[2].src = "images/sousmenumilieu.gif";

// Définition des propriétés de l'objet
o.Menu =
{

	// Chargement du menu
	__Load__: function()
	{

		// On lance le test pour s'assurer du bon fonctionnement
		o.Menu.__Init__();
	},

	// Méthode d'initialisation du menu
	__Init__:function()
	{
		// On définit les variables nécessaires.
		var iA,
			oMenu = d.getElementById('divmenu2'),
			oDl = oMenu.getElementsByTagName('dl');

		// On cache tous les éléments dd en lançant la méthode dédiée à cette tâche.
		o.Menu.__HideLists__();

		// Pour chaque élément dl du tableau oDl,
		for ( iA = 0; iA < oDl.length; iA++ )
		{
			// On définit des méthodes en fonction des actions de l'utilisateur.
			oDl[iA].onmouseover = o.Menu.__MouseDisplay__;
			oDl[iA].onmouseout = o.Menu.__HideLists2__;
		}

	},

	// Méthode d'affichage de l'élément dd lorsqu'on le survole.
	__MouseDisplay__:function()
	{
		// On récupère l'élément dd de l'élément dl qu'on survole dans un objet.
		var oDd = this.getElementsByTagName('dd')[0],
			oDt = this.getElementsByTagName('dt')[0],
			oA;
		//pour que l'élément du menu reste grand lorsque plus sélectionné
		if (oDt != null)
		{
			if (oDt.className =="ouvre")
			{
				oA = oDt.getElementsByTagName('a')[0];
				oA.style.width = "160px";
			}
		}
		//affiche le sous menu
		if (oDd != null)
		{
			// On affecte la propriété css "display: block;" à l'objet oDd (affichage)
			oDd.style.display = 'block';
		}
	},

	// Méthode de masquage des éléments dd
	__HideLists2__:function()
	{
		// On définit les variables nécessaires.
		var iA,
			oA,
			oDd = this.getElementsByTagName('dd'),
			oDt = this.getElementsByTagName('dt');
		//pour que l'élément du menu redevienne normal lorsque plus sélectionné
		oA = oDt[0].getElementsByTagName('a');
		oA[0].style.width = "150px";
		// Pour chaque élément dd du tableau oDd,
		for (iA = oDd.length - 1; iA >= 0; iA-- )
		{
			// On affecte la propriété css "display: none;" à l'objet oDd (masquage)
			oDd[iA].style.display = 'none';
		}
	},
	
	// Méthode de masquage des éléments dd
	__HideLists__:function()
	{
		// On définit les variables nécessaires.
		var iA,
			oA,
			iB,
			oDd = d.getElementById('divmenu2').getElementsByTagName('dd'),
			oDt = d.getElementById('divmenu2').getElementsByTagName('dt');
		//pour que l'élément du menu redevienne normal lorsque plus sélectionné
		for ( iB = 0; iB < oDt.length; iB++ )
		{
			oA = oDt[iB].getElementsByTagName('a');
			oA[0].style.width = "150px";
		}
		//cache le sous menu
		// Pour chaque élément dd du tableau oDd,
		for (iA = oDd.length - 1; iA >= 0; iA-- )
		{
			// On affecte la propriété css "display: none;" à l'objet oDd (masquage)
			oDd[iA].style.display = 'none';
		}

	}

};

// Une fois que le document est chargé en mémoire, on charge le script.
window.onload=o.Menu.__Load__;
