 
        
        
        

				/*******************************************************
				* Some functions for menu hovering effects
				* Currently selected menu = active menu
				* Menu preview that appears while hovering = hover menu
				*******************************************************/ 
 
    		
        var currentActiveMenuId = 'main_' + deepNav;
        var currentActiveSubmenusId = 'sub_' + deepNav;
				
                
        function navi_reset() {
            
            var submenus = document.getElementById('submenus').getElementsByTagName('a');
        
            for(var i = 0; i < submenus.length; i++)
            { 
            /*if (i==startSubNum) {
              submenus[i].className = "activemenu";
            } else {
              submenus[i].className = "sub";
            }*/
          	  
            }
            
            var oThis = this;
            
            show.apply(oThis, [currentActiveSubmenusId, document.getElementById(currentActiveMenuId)]);            
            
        }
		
		//platform independent function for adding events to objects
        function addEvent (elm, type, fnc) 
        {
        	if (window.addEventListener) 
        	{
        		elm.addEventListener(type, fnc, false);
        	} 
        	else 
        	{
        		elm.attachEvent("on" + type, fnc);
        	}
        }
        
        function addHooksClickmenu(){
          var menuLinksLevel1 = document.getElementById('head_nav1').getElementsByTagName('a');
          var menuLinksLevel2 = document.getElementById('submenus').getElementsByTagName('a');
          
		  // Hooks for menu level 1
          for(var i = 0; i < menuLinksLevel1.length; i++){
            addEvent(menuLinksLevel1[i], "click", activateMenu);
          	}
		  // Hooks for menu level 2
          for(var i = 0; i < menuLinksLevel2.length; i++){
            addEvent(menuLinksLevel2[i], "click", markActive);
          	}
       	}
        	 
        //adding events to menu an submenu items in navigation (events for a tags)
        function addHooks() 
        {
        
          var menuLinksLevel1 = document.getElementById('head_nav1').getElementsByTagName('a');
          var menuLinksLevel2 = document.getElementById('submenus').getElementsByTagName('a');
        
		  // Hooks for menu level 1
          for(var i = 0; i < menuLinksLevel1.length; i++) 
          {
            addEvent(menuLinksLevel1[i], "mouseover", activateMenuWithDelay);
            addEvent(menuLinksLevel1[i], "mouseout", deactivateMenu);
          }
		  // Hooks for menu level 2
          for(var i = 0; i < menuLinksLevel2.length; i++)
          {
            //addEvent(menuLinksLevel2[i], "click", markActive);
            addEvent(menuLinksLevel2[i], "mouseover", submenuStopMainTimer);
            addEvent(menuLinksLevel2[i], "mouseout", deactivateMenu);
          }
        navi_reset();
        }
        
        // marks menu item as active menu when on of its subitems is clicked
        function markActive(oObject)
        {
            // reset color for all links
            var submenus = document.getElementById('submenus').getElementsByTagName('a');
            for(var i = 0; i < submenus.length; i++)
            {
                submenus[i].className = "sub";
            }
            // remember name for clicked
            var curElement = '';
                
            if (oObject && oObject.id) {
                srcElm = oObject;
                curElement = oObject.parentNode.id;
                // set color for the one clicked
            	srcElm.className = "activemenu";
            } else {
              if (window.event)
              { 
                srcElm = window.event.srcElement;
                curElement = srcElm.parentNode.id;
                // set color for the one clicked
            	srcElm.className = "activemenu";
              } 
              
              // W3C DOM (FF, Mozilla, Safari)
              else 
              { 
                curElement = this.parentNode.id;
                // set color for the one clicked
            	this.className = "activemenu";
              }  
              
            }  
            // If we are here this means a submenu item was clicked
            // Now find out the related menu item on level 1 and store it
            // We need to do this for restoring highlighting of the current active menu on mouseout of hover menu
            currentActiveMenuId = getNavForSubnavWithId(curElement);
            currentActiveSubmenusId = curElement;
        }
        
        function getNavForSubnavWithId(elm)
        {
        	var pos = elm.indexOf('_');
        	var num = elm.substring(pos+1, elm.length);
        	return "main_" + num;
        }
        
        var Timer = {};
        Timer.out = false; // onmouseout timer
        Timer.over = false; // onmouseover timer
        
        
        function submenuStopMainTimer()
        {
          if (Timer.out) { // clear onmouseout timer on every main-nav mouseover
          	clearTimeout(Timer.out);
          	//console.log("reset main timer");
          }
        }
        
        function activateMenu(){
          var oThis = this;
              
          // IE & Opera
          if (window.event)
          { 
            srcElm = window.event.srcElement;
            oThis = srcElm;
            var sIdValue = oThis.id;
            var sExpression = /^main_(\d+)$/;
            sExpression.exec(sIdValue);
            ident = 'sub_'+ RegExp.$1;            
          } 
          // W3C DOM (FF, Mozilla, Safari)
          else 
          { 
          
            ident = this.attributes["ident"].value;
          }

          show(ident, oThis); 
        }
        	
        function activateMenuWithDelay()
       
        {
        //console.log("activate menu with delay");
          if (Timer.out) { // clear onmouseout timer on every main-nav mouseover
          	clearTimeout(Timer.out);
          	//console.log("reset main timer");
          }
  
          var oThis = this;
           
          // IE & Opera
          if (window.event)
          {
          
            srcElm = window.event.srcElement;
            oThis = srcElm;
            var sIdValue = oThis.id;
            var sExpression = /^main_(\d+)$/;
            sExpression.exec(sIdValue);
            ident = 'sub_'+ RegExp.$1;
             
          } 
          // W3C DOM (FF, Mozilla, Safari)
          else 
          { 
           
            ident = this.attributes["ident"].value;
            
          }
         
          if(Timer.over)
          {
            clearTimeout(Timer.over);            
          }

          Timer.over = setTimeout(function() { show(ident, oThis); }, 30); 
        }
        
        function deactivateMenu()
        {
        //console.log("deactivate menu");
          var oThis = this;
					                    
          if(Timer.out)
          {
            clearTimeout(Timer.out);
          }
          
          Timer.out = setTimeout(function() { show.apply(oThis, [currentActiveSubmenusId, document.getElementById(currentActiveMenuId)]); }, 3000);
        }


