// <!-- BEGIN $Archive: /MET-Online/javascript/slidemenu.js $ -->
// ------------------------------------------------------------------
// Setings section - configure the menu operation options here

// Interval between steps in animation
var stepInterval = 50;
var steps = 8;


// ------------------------------------------------------------------
// Code Section
var intervalID;

// Determine the browser
var NN4=(document.layers);
var IE4=(document.all);

var currentMenu = -1;
var newMenu = -1;
var stepInx = 0;
var pitch = btnWidth / steps;

// Load all images
var overMenuImages = new Array(menuList.length);
var overSubMenuImages = new Array(menuList.length);
var outMenuImages = new Array(menuList.length);
var outSubMenuImages = new Array(menuList.length);
for (i = 0; i < menuList.length; i++) {
  overMenuImages[i] = new Image();
  overMenuImages[i].src = imgDir + menuList[i] + '_ovr.gif';
  outMenuImages[i] = new Image();
  outMenuImages[i].src = imgDir + menuList[i] + '.gif';

  overSubMenuImages[i] = new Array(menuSubListCount[i]);
  outSubMenuImages[i] = new Array(menuSubListCount[i]);
  for (j = 0; j < menuSubListCount[i]; j++) {
    overSubMenuImages[i][j] = new Image();
    overSubMenuImages[i][j].src = imgDir + menuSubList[i][j] + '_ovr.gif';
    outSubMenuImages[i][j] = new Image();
    outSubMenuImages[i][j].src = imgDir + menuSubList[i][j] + '.gif';
  }
}

function getContainer(itmName) {
  var container = eval(itmName + ((IE4)?".style":""));
  return container;
}

//-----------------------------------------------------------------
function loadMenu() {
  currentMenu = getMenuCookie();
  if (currentMenu >= menuList.length) {
    deleteMenuCookie();
  }

  if(NN4) {
    createMenuForNN();
  }
  else {
    createMenuForIE();
  }
  createMenuItems();
}

function createMenuForIE(){
  var text='<DIV ID="divToolbar" STYLE="position:absolute;overflow:visible;top:'
    + tbTop +';left:'+ tbLeft +';width:'+ tbWidth +';height:'+ tbHeight +'">';

  xPos = 0;
  for(i = 0; i < menuList.length; i++) {
    text += '<DIV ID="divMenu' + i
      + '" STYLE="position:absolute;visibility:visible;top:'
      + ';left:' + xPos + ';width:'+ btnWidth
      + ';z-index:20"></DIV>';

    for (j = 0; j < menuSubListCount[i]; j++) {
      if (i == currentMenu) {
        xPos += btnWidth;
      }
      text += '<DIV ID="divItem' + i + '_' + j
        + '" STYLE="position:absolute;visibility:visible;top:0'
        + ';left:'+ xPos + ';width:'+ btnWidth
        + ';z-index:' + (19 - j) + '">xxx</DIV>';
    }
    xPos += btnWidth;
    xPos += btnGap;
  }

  text += '</DIV>';
  document.body.insertAdjacentHTML("BeforeEnd",text);
}

function createMenuForNN() {
  var toolbar = new Layer(tbWidth);

  with(toolbar) {
    clip.right=tbWidth;
    clip.bottom=tbHeight;
    moveTo(tbLeft, tbTop);
    visibility="show";
  }

  lastPos = 0;
  for(i = 0; i < menuList.length; i++) {
    if (i == currentMenu) {
      lastPos += btnWidth * menuSubListCount[i];
    }
    iPos = lastPos;
    for (j = menuSubListCount[i] - 1; j >= 0; j--) {
      eval('divItem' + i + '_' + j + '=' + 'new Layer(tbWidth, toolbar)');

      with(eval("divItem" + i + '_' + j)) {
        moveTo(iPos, 0);
        visibility="show";
      }
      if (i == currentMenu) {
        iPos -= btnWidth;
      }
    }

    eval("divMenu" + i + "=" + "new Layer(tbWidth, toolbar)");
    with(eval("divMenu" + i)) {
      moveTo(iPos, 0);
      visibility="show";
    }
    lastPos += btnWidth + btnGap;
  }
}

function reloadPage() {
  window.location.reload();
}

function createMenuItems() {
  var myDiv;

  for ( i = 0; i < menuList.length; i++) {
    myDiv = eval("divMenu" + i);

    newsStr = '<a href="javascript:toggleMenu(' + i
      + ')" onMouseOver="javascript:overmenu(' + i
      + ')" onMouseOut="javascript:outmenu(' + i
      + ')" ><img name="imgMenu' + i
      + '" src="' + imgDir + menuList[i] + '.gif" border="0"></a>';

    if(NN4) {
      with(myDiv.document) {
        write(newsStr);
        close();
      }
    }
    else {
      myDiv.innerHTML = newsStr;
    }

    for (j = 0; j < menuSubListCount[i]; j++) {
      myDiv = eval("divItem" + i + '_' + j);

      newsStr = '<a href="javascript:pickItem(' + i + ',' + j
        + ')" onMouseOver="javascript:overitem(' + i + ',' + j
        + ')" onMouseOut="javascript:outitem(' + i + ',' + j
        + ')" ><img name="imgItem' + i + '_' + j
        + '" src="' + imgDir + menuSubList[i][j] + '.gif" border="0"></a>';

      if(NN4) {
        with(myDiv.document) {
          write(newsStr);
          close();
        }
      }
      else {
        myDiv.innerHTML = newsStr;
      }
    }
  }
}

function toggleMenu(i) {
  //alert('toggle menu '+i);
  if (currentMenu == i) {
    deleteMenuCookie();
    newMenu = -1;
  }
  else {
    setMenuCookie(i);
    newMenu = i;
  }
  stepInx = steps;
  
  if (menuSubListCount[i] == 0) {
    deleteMenuCookie();
    self.location = menuUrl[i];
    return;
  }

  intervalID = setInterval("animateToolbar()", stepInterval);
}

function animateToolbar() {
  stepInx--;
  var offset = 0;
  var xPos = 0;
  var stepSize;
  if (stepInx == 0) {
    stepSize = btnWidth - (steps - 1) * pitch;
  }
  else {
    stepSize = pitch;
  }

  if(NN4) {
    for (i = 0; i < menuList.length; i++) {
      if (stepInx == 0) {
        menu = getContainer("divMenu" + i);

        menu.left = xPos;

        for (j = 0; j < menuSubListCount[i]; j++) {
          if (i == newMenu) {
            xPos += btnWidth;
          }
          var item = getContainer("divItem" + i + '_' + j);
          item.left = xPos;
        }

        xPos += btnGap + btnWidth;
      }
      else {
        menu = getContainer("divMenu" + i);

        menu.left += offset;
        for (j = 0; j < menuSubListCount[i]; j++) {
          var item = getContainer("divItem" + i + '_' + j);
          if (i == currentMenu) {
            item.left += offset - stepSize;
            offset -= stepSize;
          }
          else if (i == newMenu) {
            item.left += offset + stepSize;
            offset += stepSize;
          }
          else {
            item.left += offset;
          }
        }
      }
    }
  }
  else {
    for (i = 0; i < menuList.length; i++) {
      if (stepInx == 0) {
        menu = getContainer("divMenu" + i);

        menu.pixelLeft = xPos;

        for (j = 0; j < menuSubListCount[i]; j++) {
          if (i == newMenu) {
            xPos += btnWidth;
          }
          var item = getContainer("divItem" + i + '_' + j);
          item.pixelLeft = xPos;
        }

        xPos += btnGap + btnWidth;
      }
      else {
        menu = getContainer("divMenu" + i);

        menu.pixelLeft += offset;
        for (j = 0; j < menuSubListCount[i]; j++) {
          var item = getContainer("divItem" + i + '_' + j);
          if (i == currentMenu) {
            item.pixelLeft += offset - stepSize;
            offset -= stepSize;
          }
          else if (i == newMenu) {
            item.pixelLeft += offset + stepSize;
            offset += stepSize;
          }
          else {
            item.pixelLeft += offset;
          }
        }
      }
    }
  }

  if (stepInx == 0) {
    clearInterval(intervalID);
    currentMenu = newMenu;
    newMenu = -1;
    //alert('Done');
  }
}

function pickItem(i, j) {
  //alert('pick item ' + i + ',' + j);
  setMenuCookie(i);
  self.location = menuSubUrl[i][j];
}

function overmenu(i) {
  if (NN4) {
	myDiv = eval("divMenu" + i);
    myDiv.document.images["imgMenu" + i].src = overMenuImages[i].src;
  }
  else {
    document.images["imgMenu" + i].src = overMenuImages[i].src;
  }
}

function overitem(i, j) {
  if (NN4) {
	myDiv = eval("divItem" + i + '_' + j);
    myDiv.document.images["imgItem" + i + '_' + j].src = overSubMenuImages[i][j].src;
  }
  else {
    document.images["imgItem" + i + '_' + j].src = overSubMenuImages[i][j].src;
  }
}

function outmenu(i){
  if (NN4) {
    myDiv = eval("divMenu" + i);
    myDiv.document.images["imgMenu" + i].src=outMenuImages[i].src;
  }
  else {
    document.images["imgMenu" + i].src=outMenuImages[i].src;
  }
}

function outitem(i, j) {
  if (NN4) {
	myDiv = eval("divItem" + i + '_' + j);
    myDiv.document.images["imgItem" + i + '_' + j].src = outSubMenuImages[i][j].src;
  }
  else {
    document.images["imgItem" + i + '_' + j].src = outSubMenuImages[i][j].src;
  }
}

var openMenuCookie = "METOnline.openMenu";

function setMenuCookie(inx) {
  if (inx != getMenuCookie()) {
    document.cookie = openMenuCookie + "=" + inx;
  }
}

function getMenuCookie() {
  openMenu = -1;
  inx = document.cookie.indexOf(openMenuCookie + "=");
  inx2 = document.cookie.indexOf(";", inx);
  if (inx != -1) {
    openMenu = document.cookie.substring(inx + openMenuCookie.length + 1, inx2);
  }
  
  return openMenu;
}

function deleteMenuCookie() {
  document.cookie = openMenuCookie + "=";
}

// <!-- END $Archive: /MET-Online/javascript/slidemenu.js $ -->
