NORMAL_SIZE = 10;
SMALL_SIZE = 8;

function NavLink(label, url) {
  this.label = label;
  this.url = url;

  this.write = function() {
    writeLink(this.label, this.url); // '&nbsp;&nbsp;- ' + 
  }

  // end NavLink
}

function NavSection(label, url) {
  this.label = label;
  this.url = url;
  this.links = new Array();
  this.linkFontSize = NORMAL_SIZE;
  
  this.setLinkFontSize = function(size) {
    this.linkFontSize = size;
  }

  this.addLink = function(label, url) {
    // Why can't we use push here?  Because IE sucks.  - tj
    this.links[this.links.length] = new NavLink(label, url);
    // end addLink
  }

  this.write = function() {

    writeLink(this.label + '/', this.url);
    document.write('<span style="font-size: ' + this.linkFontSize +
                   'pt; font-weight: normal">' + '<ul class="nav-ul">');

    for (var i = 0; i < this.links.length; i++) {
      this.links[i].write();
    }
    document.write('</ul></span>');

    // end write
  }

  // end NavSection
}

navSections = new Array();
navLinkCount = 0;

function writeLink(text, url) {
  var id = 'nav' + navLinkCount;

  document.write(
    '<li class="nav-li">' +
    '<a class="navlink" ' +
    'onMouseOut="return delight(\'' + id + '\')" ' +
    'onMouseOver="return highlight(\'' + id + '\')" ' +
    'id="' + id + '" ' +
     'href="' + url + '">' +
     text +
     "</a></li>\n"
  );

  navLinkCount++;

// end writeLink
}


//------------------------------------------------------
function writeNavigationLinks() {

  if (navSections.length < 1)
    return;

  navSections[0].write();

  for (var i = 1; i < navSections.length; i++) {
    document.write("\n<br/>\n");
    navSections[i].write();
    // end for i
  }

  // end writeNavigationLinks
}



function addSection(label, url) {

  var x = new NavSection(label, url);

  // Why can't we use push here?  Because IE sucks.  - tj
  navSections[navSections.length]=x;

  return x;

  // end addSection
}

//--------------------------------------------------------------
//------------------------------------------------------
HIGHLIGHT_COLOR = "#ffffff";
DELIGHT_COLOR = "#999999";

function highlight(arg) {

  for (var x=0; x < navLinkCount; x++) {
    document.getElementById("nav" + x).style.color = DELIGHT_COLOR;
  }

  document.getElementById(arg).style.color = HIGHLIGHT_COLOR;

  return false;
}

function delight(arg) {

  for (var x=0; x < navLinkCount; x++) {
    document.getElementById("nav" + x).style.color = HIGHLIGHT_COLOR;
  }

  return false;
}

//--------------------------------------------------------------
//------------------------------------------------------
var sec = addSection("home", "/");
sec.addLink("secret planet!", "/secret-planet/");
sec.addLink("blog!", "/blog/");
sec.addLink("contact", "/contact.html");
sec.addLink("archives", "/news.html");

sec = addSection("games", "/");
sec.addLink("centrerock", "/games/centrerock/");

sec = addSection("accessories", "/");
sec.addLink("imperial commands", "/accessories/imperial-commands/");
sec.addLink("damage & control", "/accessories/damage-control/");
sec.addLink("keto system", "/accessories/keto-system/");
sec.addLink("alien altars", "/accessories/alien-altars/");


sec = addSection("articles", "/");
sec.setLinkFontSize(SMALL_SIZE);
sec.addLink("points of interest", "/links.shtml");
sec.addLink("spray adhesive", "/articles/spray-adhesive.html");
sec.addLink("foamboard", "/articles/foamboard.html");

sec = addSection("reviews", "/");
sec.setLinkFontSize(SMALL_SIZE);
sec.addLink("memoir '44: overlord", "/reviews/memoir-overlord.html");
sec.addLink("bohnanza", "/reviews/bohnanza.html");
sec.addLink("lair of the rat king", "/reviews/rat-king.html");
sec.addLink("twister", "/reviews/twister.html");
sec.addLink("tsuro", "/reviews/tsuro.html");
sec.addLink("light speed", "/reviews/light-speed.html");
sec.addLink("star force terra", "/reviews/star-force-terra.html");
sec.addLink("jacob hollow", "/reviews/jacob-hollow.html");
sec.addLink("smugglers", "/reviews/smugglers.html");
sec.addLink("heroes inc", "/reviews/heroes-incorporated.html");
