(function($) 
{
	$.fn.collapsor = function(settings) 
	{ 
		settings = $.extend({}, $.fn.collapsor.defaults, settings);
		var triggers = this;

		return this.each(function() 
		{
			$(this).find('+ ' + settings.sublevelElement).hide();
			if($(this).hasClass(settings.openClass))
				$(this).find('+ ' + settings.sublevelElement).show();
		
			$(this).click(function() 
			{
			
				if ($(this).next().is(settings.sublevelElement))
				{
				
					$(this).blur().toggleClass(settings.openClass);
						if (settings.closeOthers == true) $(this).parent().parent().children().find('.'+settings.openClass).not(this).removeClass(settings.openClass).next().animate({height:'toggle', opacity:'toggle'}, settings.speed, settings.easing);

					$(this).next().animate({height:'toggle', opacity:'toggle'}, settings.speed, settings.easing);
					return false;
				}
			});
		});
	};

	$.fn.collapsor.defaults = 
	{
		openClass:'open',
		sublevelElement: 'ul',
		closeOthers: false,
		speed: 200,
		easing: 'swing'
	};
	
})(jQuery);