//dl[accordion] dt.collapsed
//dl[accordion] dt.expanded
jQuery(function($){
    $('dl[accordion] dt')
		.css({
			cursor: 'pointer'
		})
		.addClass('collapsed')
		.live('click', function(e){
			var sender = $(this);
			sender.siblings('dt').removeClass('expanded').addClass('collapsed');
			sender
				.siblings('dd')
				.stop()
				.animate(
					{ height: 'hide' },
					'fast',
					function(){
						if(!sender.is(':visible'))
							sender.prev().removeClass('expanded').addClass('collapsed');
					}
				)
				.end()
				.next('dd')
				.stop()
				.animate(
					{ height: 'toggle' },
					'fast',
					function(){
						var sender = $(this);
						if(sender.is(':visible'))
							sender.prev().removeClass('collapsed').addClass('expanded');
						else
							sender.prev().removeClass('expanded').addClass('collapsed');
					}
				);
		});
	$('dl[accordion] dd').animate({ height: 'hide' }, 0);
});
