////////////////////////////////////////////////////////////////
//
// Beschreibung: Globale Variablen
// 
////////////////////////////////////////////////////////////////
  
  var navi_preselected = "";
  var submenusIdOpen = new Array(); //Offene Navigationselemente
  var activeSubmenu; //gerade ausgewähltes Navigationselement  
  var previousSubmenu; //das Element, das zuletzt mit der Maus berührt wurde (Bsp.: Maus wird von Private nach Unternehmen bewegt --> previousSubmenu = Private)
  var flag_reset=true; //Ob Child-Elemente doch nicht geschlossen werden sollen = Mouse-Over Navigationspunkt
  var timeout_reset_navi; //Objekt-Variable für das verzögerte Schliessen der Navigation
  var lock_navi=false; //Child-Elemente sperren (zb. bei der Startseite oder beim fehlerhaften Repositionieren)
  var reset_delay=5000; //Zeit (in Millisekunden) wie lange Navigation geöffnet bleiben soll bei Mouse-Out; Warnung: nicht auf 0 oder zu kleinem Wert stellen da manche Browser dann die Navigation auch beim Wechsel in die Child-Elemete schliessen!
  
////////////////////////////////////////////////////////////////
//
// Beschreibung: Child-Element des Navigationspunktes öffnen
// 
////////////////////////////////////////////////////////////////


  function openSubmenu(obj, submenuLevel)
  {
    //alert("openSubmenu("+obj+"," + submenuLevel);    

    var temp_obj,temp_obj2;
    flag_reset=false;  
    
    if(activeSubmenu == null || activeSubmenu != previousSubmenu) {
      closeSubmenu(obj, submenuLevel);          
    }
    submenusIdOpen[submenuLevel]=new Array();
    submenusIdOpen[submenuLevel][0]=obj;
    
    if(obj != activeSubmenu && activeSubmenu != null) {
      obj.className="navi"+submenuLevel+"_onNotActive";
    }
    else {
      obj.className="navi"+submenuLevel+"_on";
    }
//    temp_obj=MM_findObj("layer_"+obj.id);
//    if(temp_obj)
//    {
//      submenusIdOpen[submenuLevel][1]=temp_obj;
//      temp_obj.className="navi"+submenuLevel+"_layer_on";
//    }
//    temp_obj=MM_findObj("mark_"+obj.id);
//    if(temp_obj)
//    {
//      submenusIdOpen[submenuLevel][2]=temp_obj;
//      temp_obj.style.visibility='visible';
//    }
  }

////////////////////////////////////////////////////////////////
//
// Beschreibung: Alle Child-Elemente der aktuellen Ebene schliessen
// 
////////////////////////////////////////////////////////////////
  
  function closeSubmenu(obj, submenuLevel){
 //	alert("closeSubmenu(" + obj + "," + submenuLevel + ")");
      if(activeSubmenu != null || previousSubmenu != activeSubmenu) {
        for(var i=(submenuLevel);i<=submenusIdOpen.length;i++)
        {
          if(submenusIdOpen[i] != null && submenusIdOpen[i][0] != obj)
          {
            submenusIdOpen[i][0].className="navi"+i+"_off";
            if(submenusIdOpen[i][1]!=null){submenusIdOpen[i][1].className="navi"+i+"_layer_off"};
            if(submenusIdOpen[i][2]!=null){submenusIdOpen[i][2].style.visibility="hidden"};
          }       
        }
        if(activeSubmenu != null) {
	        activeSubmenu.className="navi"+submenuLevel+"_on";
        }
      }
    }

////////////////////////////////////////////////////////////////
//
// Beschreibung: Setzen der Stylesheet-Klasse für das angeklickte Menü
// 
////////////////////////////////////////////////////////////////


  function clickSubmenu(obj, submenuLevel)
  {
    obj.className="navi"+submenuLevel+"_on";
  }

////////////////////////////////////////////////////////////////
//
// Beschreibung: Alle Elemente schliessen
//
// Global      : flag_reset
// 
////////////////////////////////////////////////////////////////
  
  function closeallsubmenus()
  {
 // 	alert("closeallsubmenus()");
      if(flag_reset==true)
      {
        closeSubmenu(null,0);
        if(navi_preselected && navi_preselected!="")
        {
          var arr_preselected=navi_preselected.split(";")
          for(var i=0; i<arr_preselected.length; i++)
          {
            var arr_temp=arr_preselected[i].split(",");
            obj=MM_findObj(arr_temp[0]);
            if(obj)
            {
              openSubmenu(obj, arr_temp[1]);
            }
          }
        }
      }
  }


////////////////////////////////////////////////////////////////
//
// Beschreibung: Zeitverzögert alle Elemente schliessen
//
// Global      : reset_delay
// 
////////////////////////////////////////////////////////////////
  
  function reset_navi(obj)
  {
 	//alert("reset_navi()"+ obj);
   	  previousSubmenu=obj;
      flag_reset=true;
     	window.clearTimeout(timeout_reset_navi);
   	  timeout_reset_navi=window.setTimeout("closeallsubmenus()",reset_delay);
  }

