
function $(name) {
  return document.getElementById(name);
}

function findAncestorByClass(className, node) {
  for (; node && !node.classList.contains(className); node = node.parentNode);
  return node;
}

function pageForButton(button) {
  return $(button.getAttribute('linksto'));
}

window.onload = function(e) {
  var navButtons = document.querySelectorAll('.navButtonContainer [linksto]');
  for (var i = 0; i < navButtons.length; i++) {
    var button = navButtons[i];
    button.addEventListener('click', onNavButtonClicked);
/*  IE SUCKS
    button.page = function() {
      return $(this.getAttribute('linksto'));
    }.bind(button);
*/
  }

/*
  var thumbs = document.querySelectorAll('#bio [linksto]');
  for (var i = 0; i < thumbs.length; i++) {
    thumbs[i].querySelector('.thumb').style.backgroundImage =
        'url(profiles/' + thumbs[i].querySelector('.thumb').
            getAttribute('linksto') + '_thumb.jpeg);';
  }
*/
}

function onNavButtonClicked(e) {
  var button = e.currentTarget;
  if (button.classList.contains('selected'))
    return;
  if (button.hasAttribute('impotent'))
    return;

  var navButtonContainer = findAncestorByClass('navButtonContainer', button);
  var last = navButtonContainer.querySelector('[linksto].selected');
  if (last) {
    pageForButton(last).classList.remove('selected');
    last.classList.remove('selected');
  }

  pageForButton(button).classList.add('selected');
  button.classList.add('selected');

  window.scrollTo(0, 0);
}

