(function($){

	var DropBox	=	function(element, options){
		
		var self	=	this;
		self.element	=	element;
		self.options	=	$.extend({}, {
			title_element:		"h2",
			type:			"open",	// open, first, active, closed
			speed:			100,
			open_class:		"is_open",
			closed_class:		"is_closed",
			active_class:		"is_active"
		}, options);
		
		var first	=	true;
		$(self.options.title_element, self.element).each(function(){
			var content	=	$(this).parent().find("ul");
			
			if(self.options.type == "first"){
				if(!first){
					content.hide();
				}
				first	=	false;
			}else if(self.options.type == "closed"){
				content.hide();
			}else if(self.options.type == "active"){
				if(!$(this).hasClass(self.options.active_class)){
					content.hide();
				}
			}
			
			if(content.is(":visible")){
				$(this).removeClass("is_closed").addClass("is_open");
			}else{
				$(this).removeClass("is_open").addClass("is_closed");
			}
		});
		
		$(self.options.title_element, self.element).bind("click", function(){
			var content	=	$(this).parent().find("ul");
			if(content.is(":visible")){
				content.slideUp(self.options.speed);
				$(this).removeClass("is_open").addClass("is_closed");
			}else{
				content.slideDown(self.options.speed);
				$(this).removeClass("is_closed").addClass("is_open");
			}
		});
		
		
	}
	
	$.fn.dropbox	=	function(options){
		new DropBox($(this), options);
	}

})(jQuery);

