// menu navigation (common.js is required to set var language)

function menuItem (symName, deText, enText, url, subMenu) {
  this.symName = symName    // symbolic name
  this.deText  = deText     // german text displayed
  this.enText  = enText     // english text displayed
  this.url     = url        // (relative) URL
  this.subMenu = subMenu    // optional submenu
}

var menu = new Array()
function addMenu(item) {
  menu[menu.length] = item
}

var home0 = new menuItem("ABOUTUS", "über uns", "about us", "aboutus.html", null)
var home1 = new menuItem("FINDUS", "zu uns", "find us", "findus.html", null)
addMenu(new menuItem("HOME", "Startseite", "Home", "index.html",
                     [home0, home1]))
var dev0 = new menuItem("GOALS", "Zielkonflikt", "Goals", "goals.html", null)
var dev1 = new menuItem("STRATEGY", "Strategie", "Strategy", "strategy.html", null)
var dev2 = new menuItem("PROJECTS", "Projekte", "Projects", "projects.html", null)
var dev3 = new menuItem("METHODS", "Methoden", "Methods", "methods.html", null)
var dev4 = new menuItem("TECHNOLOGY", "Technologie", "Technology", "technology.html", null)
var dev5 = new menuItem("REENG", "Re-Engineering", "Re-Engineering", "reengineering.html", null)
addMenu(new menuItem("DEVEL", "Softwaretechnik", "Development", "development.html",
                     [dev0, dev1, dev2, dev3, dev4, dev5]))
var os0 = new menuItem("TENTACKLE", "Tentackle", "Tentackle", "tentackle.html", null)
var os1 = new menuItem("WURBELIZER", "Wurbelizer", "Wurbelizer", "wurbelizer.html", null)
addMenu(new menuItem("OPENSOURCE", "Open Source", "Open Source", "opensource.html",
                     [os0, os1]))
addMenu(new menuItem("SERVICES", "Dienstleistungen", "Services", "services.html", null))
addMenu(new menuItem("IMPRINT", "Impressum", "Imprint", "imprint.html", null))

// recursively create the menu
function createSubMenu (level, mlist, argPath) {
  document.write('<ul class="level' + level + '">')
  var pathElem = argPath[level]
  for (var i = 0; i < mlist.length; i++) {
    var item = mlist[i]
    var mText = language=='de' ? item.deText : item.enText;
    if (item.symName == pathElem) {
      if (item.subMenu == null) {
        document.write('<li class="leaf"><a class="open" href="' + item.url + '">' + mText + '</a></li>')
      }
      else  {
        if (level >= argPath.length - 1) {
          document.write('<li class="node"><a class="open" href="' + item.url + '">' + mText + '</a>')
        }
        else  {
          document.write('<li class="node"><a href="' + item.url + '">' + mText + '</a>')
        }
        createSubMenu(level+1, item.subMenu, argPath)
        document.write('</li>')
      }
    }
    else {
      document.write('<li class="leaf"><a href="' + item.url + '">' + mText + '</a></li>')
    }
  }
  document.write('</ul>')
}


// create menu
// ex.: createMenu(["DEVEL", "STRATEGY"])
function createMenu(argPath) {
  createSubMenu(0, menu, argPath)
}

