var menu = {
	menuObj: null, 

	init: function() {
		this.menuObj = $("#menu");
		this.menuObj.find("a.toggle").click(function(event) {
			menu.toggleSub($(event.target));
			return false;
		});

		var active = this.menuObj.find("a.active").eq(0);
		active.parents("li.collapse").children("a.toggle").html("-").addClass("closed");
		active.parents("li.collapse").children("ul.sub").show();
		
		$("#menu-action-collapse-all").click(function(event) {
			menu.collapseAll();
		});
		
		$("#menu-action-expand-all").click(function(event) {
			menu.expandAll();
		});
	},

	toggleSub: function(el) {
		el.siblings("ul").toggle("fast");
		el.parent().toggleClass("open");

		if (!el.hasClass("closed")) {
			el.html("-");
			el.addClass("closed");
		} else {
			el.html("+");
			el.removeClass("closed");
		}
	},
	
	expandAll: function() {
		menu.menuObj.find("a.toggle").html("-").addClass("closed");
		menu.menuObj.find("ul.sub").show("fast");
		return false;
	}, 
	
	collapseAll: function() {
		menu.menuObj.find("a.toggle").html("+").removeClass("closed");
		menu.menuObj.find("ul.sub").hide("fast");
		return false;
	}
	
};

jQuery(function($) { menu.init(); });