(function($) {
	
	var self = this, $self = $(this);
	
	
	function Item(el){
		var self = this, $self = $(this);
		
		$.extend(this, {
			click: function(e){
				if(el.hasClass("expanded")){
					el.removeClass("expanded");
					el.addClass("collapsed");
					//el.children(".expandable").hide();
					el.children(".expandable").slideUp(300);
				}
				else if(el.hasClass("collapsed")){
					el.removeClass("collapsed");
					el.addClass("expanded");
					//el.children(".expandable").show();
					el.children(".expandable").slideDown(300);
				}
			}
		});

		$(el).children("table").find("a#toggle").bind("click", function(e) {
				self.click(e);
				return false;
			});
	}
	
	$.fn.tree = function(branches) {
		$(branches).each(function(i) {
			var el = new Item($(this));
		});
		return this;
	};
		

}) (jQuery); 

