var App = {
  "a.menu-item::mouseenter":function(element,event) {
    element.effects({duration:250}).start({color:"#3333CC"});
  },
  "a.menu-item::mouseleave":function(element,event) {
    element.effects({duration:250}).start({color:element.hasClass("active") ? "#000" : "#444"});
  },
  "a.new":function(element) {
    element.target = "_new";
  },
  "div.tabset":function(element) {
    var tabs = element.getElements("a.tab");
    if (tabs.length == 0) tabs = element.getElements("input.tab");
    var tabBodies = element.getElements("div.tab");
    Tab = 0;
    tabs.forEach(function(tab,index) {
      tab.addEvent("click",function(event){
        if (tab.tagName == "A") new Event(event).stop();
        if (tab.hasClass("active") || index == Tab) return;
        tabs[Tab].removeClass("active");
        tabBodies[Tab].setStyle("display","none");
        Tab = index;
        tabs[Tab].addClass("active");
        tabBodies[Tab].setStyle("display","");
      });
    });
  },
  "input.option::change":function(element) {
    if (element.getAttribute("type") == "radio") {
      var options = $(element.getAttribute("rel") + "_options");
      if (options) options.setStyle("display",element.id == element.getAttribute("rel") ? "" : "none");
    } else if (element.getAttribute("type") == "checkbox") {
      var option = $(element.id + "_options");
      if (option) option.setStyle("display",element.checked ? element.hasClass("reversed") ? "none" : "" : element.hasClass("reversed") ? "" : "none");
    }
  }
}

var Tab;