/* usspotemkin.com - Winter 2008 Codebase
 * created by Captain Warp <warp@usspotemkin.com>
 * copyright (c) 2007
 * --
 * Good day to you, wanderer of code
 * Welcome to this design's humble abode.
 * Explore a bit and stay a while
 * And compare your browser to this file.
 * Courtesy always comes off best
 * In a place of learning when a guest.
 * Look around and touch and feel
 * But please do not dare to steal.
 * --
 */
 
function setUpTableOfContents() {
  var tocContainers = document.getElementsByTagName("ol");
  
  var headings = document.getElementsByTagName("h2");
  var tocHTML = "";
  for(var i = 0; i < headings.length; i++) {
    if(hasClassName(headings[i], "toc_ignore")) {
      continue;
    }
    
    headings[i].style.textTransform = "none";
    
    tocHTML += "<li><a href=\"#section" + i + "\">" + headings[i].innerHTML + "</a></li>";
    
    namedAnchor = document.createElement("a");
    namedAnchor.name = "section" + i;
    headings[i].parentNode.insertBefore(namedAnchor, headings[i]);
    
    topLink = document.createElement("a");
    topLink.href = "#top";
    topLink.className = "top_link";
    topLink.innerHTML = "[Back To Top]";
    headings[i].parentNode.insertBefore(topLink, headings[i]);
    
    //new Insertion.Before(headings[i], "<a name=\"section" + i + "\"></a>");
    //new Insertion.Before(headings[i], "<a class=\"top_link\" href=\"#top\">[Back To Top]</a>");
    
    headings[i].style.textTransform = "uppercase";
  }
  
  for(var i = 0; i < tocContainers.length; i++) {
    if(hasClassName(tocContainers[i], "toc")) {
      tocContainers[i].innerHTML = tocHTML;
    }
  }
  
}

/* run the attachment handlers at the appropriate time */
// requires FastInit: http://tetlaw.id.au/view/javascript/fastinit
FastInit.addOnLoad(setUpTableOfContents);
