// JavaScript Document

//******************** LISTE DES CONSTANTES

	// Class Menu non sélectionné
		var CLASS_MENU	=	"menu";
	// Class Menu sélectionné
		var CLASS_MENU_SELECTED	=	"menu_selected";
	// Class Menu survolé par la souris
		var CLASS_MENU_OVER	=	"menu_over";
	// Class Sous_menu non sélectionné
		var CLASS_SOUS_MENU	=	"sous_menu";
	// Class Sous Menu affiché
		var CLASS_SOUS_MENU_DISPLAY	=	"sous_menu_display";
	// Class Sous Menu sélectionné
		var CLASS_SOUS_MENU_SELECTED	=	"sous_menu_selected";
	// Class Sous Menu survolé par la souris
		var CLASS_SOUS_MENU_OVER	=	"sous_menu_over";
		
//******************** FIN LISTE DES CONSTANTES

//******************** LISTE DES VARIABLES GLOBALES

	// Variable contenant l'Id du menu sélectionné
		var IdMenuSelected;
	// Variable contenant l'Id du sous menu sélectionné
		var IdSousMenuSelected;	
	// Variable contenant le nom des sous_menus sélectionnés
		var NameSousMenuSelected;


//******************** FIN LISTE DES VARIABLES GLOBALES

// Fonction qui change la classe d'éléments sélectionnés par leur nom
function changeClassByName(_name,_newClass)
{
	var elementArray = document.getElementsByName(_name);
	
	$index = 0;
	var el = document.getElementById(_name+$index);
	
	while (el != null)
	{
		el.setAttribute('className',_newClass);
		el.setAttribute('class',_newClass);
		$index++;
		el = document.getElementById(_name+$index);

	}
	
};

// Fonction qui change la classe d'un élément sélectionné par son Id
function changeClassById(_id,_newClass)
{
	var element = document.getElementById(_id);
	element.setAttribute('class',_newClass);
	element.setAttribute('className',_newClass);
};

// Fonction qui change la classe d'un menu sélectionné par son Id
function changeClassMenuById(_id,_newClass)
{
	// On change la classe de l'objet s'il n'est pas sélectionné
	if ( _id != IdMenuSelected )
	{
		changeClassById(_id,_newClass);
		IdMenuSelected=_id;
	}
};

// Fonction qui change la classe d'un sous menu sélectionné par son Id
function onClickSousMenuById(_id,_newClass,_nomCategorie,_idCategorie)
{
	// On change la classe de l'objet s'il n'est pas sélectionné
	
	if ( _id != IdSousMenuSelected )
	{
		
		changeClassById(_id,_newClass);
		if ( IdSousMenuSelected != null && IdSousMenuSelected != "")
			changeClassById(IdSousMenuSelected,CLASS_SOUS_MENU_DISPLAY);
		IdSousMenuSelected=_id;
	}
	
	document.formMenu.action=_nomCategorie+".php";
	document.formMenu.formIdMenuSelected.value=IdMenuSelected;
	document.formMenu.formIdCategorieSelected.value=_idCategorie;
	document.formMenu.formIdSousMenuSelected.value=IdSousMenuSelected;
	document.formMenu.formNameSousMenuSelected.value=NameSousMenuSelected;
	document.formMenu.submit();
	
	
};


// Fonction qui, lorsque la souris quitte un menu, vérifie s'il est sélectionné.
// Si ce n'est pas celui sélectionné alors on remet sa classe normale
function onMouseOutMenu(_idMenu,_nameSousMenu)
{
	if ( IdMenuSelected != _idMenu )
	{
		changeClassById(_idMenu,CLASS_MENU);
	}
	
};

// Fonction qui, lorsque la souris quitte un sous menu, vérifie s'il est sélectionné.
// Si ce n'est pas celui sélectionné alors on remet sa classe normale
function onMouseOutSousMenu(_idSousMenu)
{
	if ( IdSousMenuSelected != _idSousMenu )
	{
		changeClassById(_idSousMenu,CLASS_SOUS_MENU_DISPLAY);
	}
	
};

// Fonction qui déselectionne un menu
function deselectMenu(_idMenu,_nameSousMenu)
{
	changeClassById(_idMenu,CLASS_MENU);
	changeClassByName(_nameSousMenu,CLASS_SOUS_MENU);	
	IdSousMenuSelected=null;
	IdMenuSelected=null;
	
}

// Fonction permettant de sélectionner un menu et d'afficher ses sous-menus
function selectMenu(_idMenuSelected, _nameSousMenu)
{
	// On déselectionne le menu précédemment sélectionné
	if ( IdMenuSelected != null && IdMenuSelected != "" )
	{
		deselectMenu(IdMenuSelected, NameSousMenuSelected);
	}
	
	// On change l'Id et le nom du menu et sous_menus sélectionnés
	IdMenuSelected			=	_idMenuSelected;
	NameSousMenuSelected	=	_nameSousMenu;
	
	// On sélectionne les menu et sous_menus
	changeClassById(_idMenuSelected,CLASS_MENU_SELECTED);
	changeClassByName(_nameSousMenu,CLASS_SOUS_MENU_DISPLAY);
	
};


// Fonction qui recharge le menu avec les menu et sous menu sélectionnés
//lors du changement de page
function rechargeMenu()
{

	if ( IdMenuSelected != null && IdMenuSelected != "")
	{	changeClassById(IdMenuSelected,CLASS_MENU_SELECTED);
	changeClassByName(NameSousMenuSelected,CLASS_SOUS_MENU_DISPLAY);}
	
	if ( IdSousMenuSelected != null && IdSousMenuSelected != "")
		{changeClassById(IdSousMenuSelected,CLASS_SOUS_MENU_DISPLAY+' '+CLASS_SOUS_MENU_SELECTED);}
	
	
};


// Trouve la position absolue d'un element
function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
};

function displayListeRubrique(_parentId,_elementId)
{
	var parent = document.getElementById(_parentId);
	var tab = findPos(parent);
	var elem = document.getElementById(_elementId);
	tab[1] = tab[1]+20;
	
	if( elem.style.setAttribute ){
	elem.style.setAttribute('cssText', 'position:absolute;top:'+tab[1]+'px;left:'+tab[0]+'px	;display:block', 0);
	}
	else
	{
		elem.setAttribute('style','position:absolute;top:'+tab[1]+'px;left:'+tab[0]+'px	;display:block');
	}
};


function undisplayListeRubrique(_elementId)
{
	var elem = document.getElementById(_elementId);
	
	if( elem.style.setAttribute ){
	elem.style.setAttribute('cssText', 'display:none', 0);
	}
	else
	{
		elem.setAttribute('style','display:none');
	}
}


function addition(_un,_deux)
{
	return _un+_deux;
}

function soustraction(_un,_deux)
{
	return _un-_deux;
}



function sendMail(_dest,_sujet,_corps)
{
	var texte = "mailto:"+_dest+"?subject="+_sujet+"&body="+_corps;
	alert(_corps);
}


function ecrit(_texte)
{
	
	document.as.action=_texte;
	document.as.submit();
}


function changeQuantite(reference,quantite)
{
	if (	 listeArticle != null )
		for (index=0; index < listeArticle.length; index++)
		{
			_ref = listeArticle[index][0];
			if ( _ref == reference )
			{
				listeArticle[index][1] = quantite;
				break;
			}
		}
}


function sendCommande()
{
	
	var texte = "mailto:commande@serviettesenfolie.com?subject=Commande&body=Bonjour,%0D%0A%0D%0AVoici%20ma%20commande%20:%0D%0A%0D%0A";
	
	if ( listeArticle != null )
	{
		for ( index = 0; index < listeArticle.length; index++) 
		{
			article = listeArticle[index];
			if ( article != null )
			{
				if ( article[1] != "0" )
					texte+="Reference%20:%20"+ article[0] +",%20Quantite%20:%20" + article[1] +",%20Prix%20Unitaire%20:%20"+article[2]+"%20euros;%0D%0A%0D%0A";		
			}
		}
	}
	document.getElementById("envoiMail").href=texte;
	
	
}

