/*
 * treeview.js - Expand and collapse a tree menu
 *
 * Web page:
 *   http://www.revulo.com/PukiWiki/Plugin/TreeView.html
 *
 * Copyright (c) 2007-2009 revulo
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

(function() {

function toggle(event) {
  var element = event ? event.target : window.event.srcElement;

  if (element.nodeName == "LI") {
    var li = element;
    var ul = li.getElementsByTagName("ul")[0];

    if (ul) {
      if (li.className == "expanded") {
        li.className = "collapsed";
        ul.style.display = "none";
      } else {
        li.className = "expanded";
        ul.style.display = "block";
      }
    }
  }
}

function cancel() {
  return false;
}

var tree   = document.getElementById("treeview");
var isMSIE = /*@cc_on!@*/false;

tree.onclick     = toggle;
tree.onmousedown = cancel;
if (isMSIE) {
  tree.ondblclick    = toggle;
  tree.onselectstart = cancel;
}
tree = null;

})();

