
function FocusMP(action,nummenu,fonction,param1,param2)
{//passage de la souris sur un lien du menu principal

    var lien = document.getElementById("mp_"+nummenu);
		var barre_separation = null;
		(document.getElementById("mp").getElementsByTagName("label")[nummenu]) ? barre_separation = document.getElementById("mp").getElementsByTagName("label")[nummenu] : barre_separation = null
		
		if((lien.getElementsByTagName("img").length > 3 && lien.getElementsByTagName("span")[0])
		   || (lien.getElementsByTagName("img").length > 1  && !lien.getElementsByTagName("span")[0]))
		{//pour eviter de retirer la couleur sur le lien après clic

		    var image_0 =  lien.getElementsByTagName("img")[(lien.getElementsByTagName("img").length-2)];
				var image_1 =  lien.getElementsByTagName("img")[(lien.getElementsByTagName("img").length-1)];

        if(action==1)
        {

    				image_0.style.display = "none";
    				image_1.style.display = "inline";
						
        }
        else
        {
        
    				image_1.style.display = "none";
    				image_0.style.display = "inline";
						
        }
		
		}
		
		if(lien.getElementsByTagName("span")[0])
		{//background surbrillance menu principal uniquement si sous menu déroulant existant
		
    		if(action == 1)
    		{
    		
    				var PaddingLeft = 16;
    				var PaddingTop = 6;
    		    lien.getElementsByTagName("span")[0].style.width = Math.round(lien.offsetWidth+(PaddingLeft*2))+"px";
    				lien.getElementsByTagName("span")[0].style.height = "26px";
    				lien.getElementsByTagName("span")[0].style.top = -PaddingTop+"px";
    				lien.getElementsByTagName("span")[0].style.left = -PaddingLeft+"px";
    				lien.getElementsByTagName("span")[0].style.display = "inline";
						(barre_separation != null) ? barre_separation.style.color = "#ffffff" : barre_separation=null
    		
    		}
    		else
    		{
    		
    		    lien.getElementsByTagName("span")[0].style.display = "none";
						(barre_separation != null) ? barre_separation.style.color = "#CFD7D9" : barre_separation=null
    		
    		}
		
		}
    
    if(fonction != "")
    {//appel action secondaire
    
        setTimeout(fonction+"('"+param1+"','"+param2+"')",10);
    
    }

}

var BoucleDerouleSousMenu = new Array();
var BoucleFocusSousMenu = new Array();

function DerouleSMP(action,smenu)
{//animation deroule sous menu principal

    var smp = document.getElementById("smp_"+smenu);
    var smp_div = smp.getElementsByTagName("div")[0];
    var HauteurTotale = (smp_div.getElementsByTagName("a").length*22)+12+11;  //22 = hauteur d'un a du menu/12 = padding-bottom menu/11 = padding-top menu
    var compteur = 0;
    var intervalle = Math.round(HauteurTotale/15);
    clearInterval(BoucleDerouleSousMenu[smenu]);

		if(action == 1)
		{
		
            if(smp.offsetHeight < 2)
        		{//on réinitialise la hauteur que si on est à la case départ
        		
          		    smp.style.height = "1px";
									smp_div.style.top = "0px";
          				
        		}
						
    				smp.style.display = "inline";
						
    		    BoucleDerouleSousMenu[smenu] = setInterval(function() {
    				
    				    if(smp.offsetHeight < (HauteurTotale-intervalle))
    						{
								
								    smp.style.height = (smp.offsetHeight+intervalle)+"px";
										(smp_div.offsetTop < 12) ? smp_div.style.top = (smp_div.offsetTop+1)+"px" : smp_div.style.top = "12px";
										
										if((smp_div.offsetHeight+smp_div.offsetTop) >= (smp.offsetHeight-12-smp_div.offsetTop-10)) //-10 ou ca marche pas ...
										{//on redimentionne la div conteneur des lien du smp si elle passe par dessus du dégradé du background bas
										
										    ((smp.offsetHeight-12-smp_div.offsetTop) > 0) ? smp_div.style.height = (smp.offsetHeight-12-smp_div.offsetTop)+"px" : smp_div.style.height = "1px"
										
										}
										else
										{
										
										    smp_div.style.height = (smp_div.getElementsByTagName("a").length*22)+"px";
										
										}
										
    						}
    						else
    						{
								
    						    smp.style.height = HauteurTotale+"px";
										smp_div.style.top = "12px";
										smp_div.style.height = (HauteurTotale-12-12)+"px";
    						    clearInterval(BoucleDerouleSousMenu[smenu]);
    						
    						}
								
    				
    				}, 12);
				
		
		}
		else
		{
		
		    compteur = smp.offsetHeight;
		    BoucleDerouleSousMenu[smenu] = setInterval(function() {
				
				    if(compteur > 1)
						{
						
						    smp.style.height = compteur+"px";
								
								(smp_div.offsetTop > 0) ? smp_div.style.top = Math.abs(smp_div.offsetTop-1)+"px" : smp_div.style.top = "0px"
								
								if((smp_div.offsetHeight+smp_div.offsetTop) > (smp.offsetHeight-12-smp_div.offsetTop))
								{//on redimentionne la div conteneur des lien du smp si elle passe par dessus du dégradé du background bas
								
								    ((smp.offsetHeight-12-smp_div.offsetTop) > 0) ? smp_div.style.height = (smp.offsetHeight-12-smp_div.offsetTop)+"px" : smp_div.style.height = "1px"
								
								}
								else
								{
								
								    smp_div.style.height = "1px";
								
								}
										
								compteur -= intervalle;
						
						}
						else
						{
						
								smp.style.height = "1px";
								smp_div.style.top = "0px";
								smp.style.display = "none";
						    clearInterval(BoucleDerouleSousMenu[smenu]);
						
						}
				
				
				}, 12);
		
		}

}

function rgb2hex(r,g,b) 
{//conversion couelur RGB en hexa

    var hexVal = function(n) {
		
        var data = "0123456789ABCDEF";
        if (n==null) return "00";
        n=parseInt(n); 
        if (n==0 || isNaN(n)) return "00";
        n=Math.round(Math.min(Math.max(0,n),255));
        return data.charAt((n-n%16)/16) + data.charAt(n%16);
				
    }
    return hexVal(r)+hexVal(g)+hexVal(b);

}

function FocusSMP(action,lien,id)
{//couleur fond ligne sous menu principal

    clearInterval(BoucleFocusSousMenu[id]);
		
		if(action == 1)
		{
		
		    var R = 255;
    		var V = 255;
    		var B = 255;
				
        BoucleFocusSousMenu[id] = setInterval(function(){
    		
    		    if(Math.round(R) != 207 && Math.round(V) != 215 && Math.round(B) != 217)
    				{
						
						    //calcul : ( valeur de départ - valeur à atteindre ) / nb etapes souhaité
						    R -= 9.6;
								V -= 8;
								B -= 7.6;
								
    				    lien.style.backgroundColor = "#"+rgb2hex(Math.round(R),Math.round(V),Math.round(B));
								
    				}
    				else
    				{
						
    				    lien.style.backgroundColor = "#CFD7D9";
    						clearInterval(BoucleFocusSousMenu[id]);
    				
    				}
    		
    		},50);
		
		}
		else
		{

				var R = 207;
    		var V = 215;
    		var B = 217;
				
		    BoucleFocusSousMenu[id] = setInterval(function(){
    		
    		    if(Math.round(R) <= 255 && Math.round(V) <= 255 && Math.round(B) <= 255)
    				{
						
						    R += 9.6;
								V += 8;
								B += 7.6;
								
    				    lien.style.backgroundColor = "#"+rgb2hex(Math.round(R),Math.round(V),Math.round(B));
    				
    				}
    				else
    				{
						
    				    lien.style.backgroundColor = "#FFFFFF";
    						clearInterval(BoucleFocusSousMenu[id]);
    				
    				}
    		
    		},50);
		
		}

}



