// VARIABLES
  // User settings
  var menuOffsetTop = 2;
  var menuOffsetLeft = 0;
  var menuCloseTimeout = 100;
  
  // Private
  var buttonsContainer = null;
  var openMenuTimeout = null;


// FUNCTIONS

  // Public Functions
    // Display menu functions
  function drawMainMenu(container_id)
  {
    out = '';
    
    for (var i=0; i<menus.length; ++i)
    {
      out += '<img src="'+ menus[i][1] +'" width="'+ menus[i][2] +'" height="'+ menus[i][3] +'" id ="main_menu_'+ menus[i][0] +'" alt="" border="0" class="button_norm" onMouseOver="javascript: this.className = \'button_over\'; drawMenu('+ menus[i][0] +');" onMouseOut="javascript: this.className = \'button_norm\'; closeMenu('+ menus[i][0] +');"';
      if (menus[i][4] != '')
        out += ' onClick="javascript: window.open(\''+ menus[i][4] +'\', \'_self\');"';
      out += '/>';
    }
    
    container = document.getElementById(container_id);
    container.innerHTML = out;
    
    buttonsContainer = container_id;
  }
  
  function drawMenu(parent)
  {
    var draw = false;
    
    // Proverka
    for (var i=0; i<submenus.length; ++i)
      if (submenus[i][0] == parent)
      {
        draw = true;
        break;
      }
      
    if (draw)
    {
      outmenu = document.createElement('div');
      outmenu.id = 'menu_'+ parent;
      outmenu.className = 'submenu';
      
      if (outmenu.attachEvent)
      {
        outmenu.attachEvent('onmouseover', cancelClosing);
        outmenu.attachEvent('onmouseout', closeMenuSelf);
      }
      else
      {
        outmenu.addEventListener('mouseover', cancelClosing, false);
        outmenu.addEventListener('mouseout', closeMenuSelf, false);
      }
        
      sudurj = '';
      for (var i=0; i<submenus.length; ++i)
        if (submenus[i][0] == parent)
          sudurj += '<p class="submenu-item-norm" onMouseOver="javascript: this.className = \'submenu-item-over\';" onMouseOut="javascript: this.className = \'submenu-item-norm\';" onClick="javascript: window.open(\''+ submenus[i][2] +'\', \'_self\');">'+ submenus[i][1] +"</p>\n";
      outmenu.innerHTML = sudurj;
      
      outmenu.style.top = getPosTop(parent) + getHeight(parent) + menuOffsetTop +'px';
      if (parent == 7)
        outmenu.style.left = getPosLeft(parent) + (menuOffsetLeft - 80) +'px';
      else
        outmenu.style.left = getPosLeft(parent) + menuOffsetLeft +'px';
      
      container = document.getElementById(buttonsContainer);
      container.appendChild(outmenu);
    }
  }
  
    // Close menu functions
  function closeMenu(parent_id)
  {
    var close = false;
    
    // Proverka
    for (var i=0; i<submenus.length; ++i)
      if (submenus[i][0] == parent_id)
      {
        close = true;
        break;
      }
      
    if (close)
      openMenuTimeout = window.setTimeout('doCloseMenu('+ parent_id +')', menuCloseTimeout);
  }
  
  function doCloseMenu(parent_id)
  {
    var themenu = document.getElementById('menu_'+ parent_id);
    var container = document.getElementById(buttonsContainer);
    
    container.removeChild(themenu);
  }
  
  function cancelClosing()
  {
    if (openMenuTimeout)
    {
      clearTimeout(openMenuTimeout);
      openMenuTimeout = null;
    }
  }
  
  function closeMenuSelf()
  {
    if (this.tagName)
    {
      if (this.tagName == 'DIV')
      {
        parent_id = this.id.substr(this.id.lastIndexOf('_')+1);
        openMenuTimeout = window.setTimeout('doCloseMenu('+ parent_id +')', menuCloseTimeout);
      }
    }
    else
      if (event)
      {
        if (event.fromElement.tagName == 'DIV')
        {
          parent_id = event.fromElement.id.substr(event.fromElement.id.lastIndexOf('_')+1);
          openMenuTimeout = window.setTimeout('doCloseMenu('+ parent_id +')', menuCloseTimeout);
        }
      }
  }
  
  
  
  // Private Functions
  function getPosTop(parent_id)
  {
    endPos = 0;
    var parent = document.getElementById('main_menu_'+ parent_id);
    
    do {
      endPos += parent.offsetTop;
      parent = parent.offsetParent;
    } while(parent);
    
    return endPos;
  }
  
  function getPosLeft(parent_id)
  {
    endPos = 0;
    var parent = document.getElementById('main_menu_'+ parent_id);
    
    do {
      endPos += parent.offsetLeft;
      parent = parent.offsetParent;
    } while(parent);
    
    return endPos;
  }
  
  function getHeight(parent_id)
  {
    var parent = document.getElementById('main_menu_'+ parent_id);
    
    endHeight = parent.offsetHeight;
    
    return endHeight;
  }


