var menuTimerId = 0;
var menuCurrent = 0;

function menuHover(id)
{
  if (!document.getElementById)
    return;

  window.clearTimeout(menuTimerId);
  menuTimerId = 0;
  menuCurrent = id;

  _menuReset(false);

  var obj;
  if (obj = document.getElementById('mainmenu_' + id)) {
    if (obj.src) {
      obj.src = menuImgs[id][1].src;
    } else {
      obj.className = 'level_0_hover';
    }
  }

  initSubmenu(id);
} // end func menuHover


function menuReset(reset)
{
  if (menuTimerId != 0)
    return;

  menuCurrent = menuSelected;

  menuTimerId = window.setTimeout('_menuReset(' + reset + ')', 100);
} // end func menuReset


function _menuReset(restoreDefault)
{
  var i, obj;

  if (!document.getElementById)
    return;

  for (i = 0; i < menuLength; ++i) {
    if (obj = document.getElementById('submenu' + i))
      obj.style.display = 'none';

    if (i == menuSelected) {
      if (restoreDefault && (obj = document.getElementById('submenu' + i)))
        obj.style.display = 'block';

      if (obj = document.getElementById('mainmenu_' + i)) {
        if (obj.src) {
          obj.src = menuImgs[i][2].src;
        } else {
          obj.className = 'level_0_selected';
        }
      }
      continue;
    }

    if (obj = document.getElementById('mainmenu_' + i)) {
      if (obj.src) {
        obj.src = menuImgs[i][0].src;
      } else {
        obj.className = 'level_0';
      }
    }
  }

  menuTimerId = 0;
} // end func _menuReset


function initSubmenu(id)
{
  var submenu, submenuImg, offset, width, avWidth;

  if (!document.getElementById)
    return;

  if (!(submenu = document.getElementById('submenu' + id)))
    return;

  if (!(offset = document.getElementById('mainmenu_' + id).offsetLeft))
    return;

  offset += mainmenuOffsetLeft;

  if (!(submenuImg = document.getElementById('submenu_' + id)))
    return;

  if (width = submenuImg.offsetWidth) {
    avWidth = document.getElementsByTagName('body')[0].clientWidth;
  } else {
    submenu.style.display = 'block';
    width   = document.getElementById('submenu_' + id).offsetWidth;
    avWidth = document.getElementsByTagName('body')[0].clientWidth;
  }
  var minWidth = document.getElementById('mainmenu_' + id).offsetWidth;

  if (offset + width > avWidth)
    offset = avWidth - width; 
  if (offset < 0)
    offset = 0;

  submenu.style.marginLeft = offset + 'px';
  if (width < minWidth) {
    submenuImg.style.width = minWidth + 'px';
  }
} // end func initSubmenu


function navigationHover(level, id, mode)
{
  var obj;

  if (!document.getElementById)
    return;
  if (!(obj = document.getElementById('mainNavigation' + level + '_' + id)))
    return;

  obj.src = '../img/' + (mode ? 'dot.blue' : 'white') + '.gif';
} // end func navigationHover

var menuImgs;

function preloadMenu()
{
  var i;

  menuImgs = new Array(menuItems.length);

  for (i = 0; i < menuItems.length; ++i) {
    menuImgs[i] = new Array(new Image, new Image);
    menuImgs[i][0].src = menuImgPath + menuItems[i] + '.' + menuImgSuffix;
    menuImgs[i][1].src = menuImgPath + menuItems[i] + '_1.' + menuImgSuffix;
  }
}


function popup(a, w, h)
{
  var clientW, clientH;

  var detWin = window.open('bilddetails.php?file='+ a, 'DetailBild', 'width=' + w + ',height=' + h + ',scrollbar=1,resizable=yes');

  if (typeof(document.all) === 'undefined') {
    clientH = detWin.document.body.clientHeight;
    clientW = detWin.document.body.clientWidth;
  } else {
    var tmp = detWin.document.getElementsByTagName('html');
    if (typeof(tmp) == 'object' && typeof(tmp[0]) == 'object')
      clientH = tmp[0].clientHeight;
    tmp = detWin.document.getElementsByTagName('html');
    if (typeof(tmp) == 'object' && typeof(tmp[0]) == 'object')
      clientW = tmp[0].clientWidth;
  }
  if (!clientH || !clientW)
    return;

  if (clientW != w || clientH != h) {
    detWin.resizeBy(w - clientW, h - clientH);
  }
} // end func popup


