(function($)
{
	$.fn.CreateAccordion = function(settings)
	{
		var config = $.extend(
		{
			hasButtons:		false,
			closeString:	'btn-open',
			openString:		'btn-close',
			
			parentItem:		'.parent'
			
		}, settings || {});
		
		var global = 
		{
			openItem: 	null,
			accordion: 	$(this)
		};
		
		
		function initAccordion()
		{
			global.openItem = $(config.parentItem + ':first', global.accordion);
			global.openItem.addClass('open');
			$('span', global.openItem).removeClass('btn-close');
			
			var items = $(config.parentItem, global.accordion);
			var i = 0;
			var len_i = items.length;
			
			for (i; i < len_i; i++)
			{
				if (i == 0)
				{
					$('ul:first', items[i]).show();
					//$(items[i]).append('<span class="' + config.closeString + '"></span>')
				}
				else
				{
					$('ul:first', items[i]).hide();
					//$(items[i]).append('<span class="' + config.openString + '"></span>');
				}
				
				var params = { object: items[i] }
				$(items[i]).bind('click', params, toggleState);
			}
		}
		
		function toggleState(e)
		{
			var elem = e.data.object;
			
			//alert($(elem).html() + ":" + global.openItem.html());
			/*
			if ($(elem).html() != global.openItem.html())
			{
				$(elem).addClass('open');
				$('span', elem).removeClass('btn-close').addClass('btn-open');
				
				$('ul:first', elem).hide().slideToggle('normal', function()
				{	
					global.openItem.removeClass('open');
					$('span', global.openItem).removeClass('btn-open').addClass('btn-close');
					
					$('ul:first', global.openItem).slideToggle('normal', function()
					{
						global.openItem = $(elem);
					});
				});
			}
			*/
			/*
			if ($(elem).html() != global.openItem.html())
			{
				$(elem).addClass('open');
				$('span', elem).removeClass('btn-close').addClass('btn-open');
				
				$('ul:first', global.openItem).slideToggle('normal', function()
				{	
					global.openItem.removeClass('open');
					$('span', global.openItem).removeClass('btn-open').addClass('btn-close');
					
					$('ul:first', elem).hide().slideToggle('normal', function()
					{
						global.openItem = $(elem);
					});
				});
			}
			*/
			if ($(elem).html() != global.openItem.html())
			{
				$(elem).addClass('open');
				$('span', elem).removeClass('btn-close').addClass('btn-open');
				
				global.openItem.removeClass('open');
				$('span', global.openItem).removeClass('btn-open').addClass('btn-close');
					
				$('ul:first', global.openItem).slideUp('normal')
				$('ul:first', elem).hide().slideDown('normal');
				
				global.openItem = $(elem);
			}
			
			return false;
		}
		
		initAccordion();
	};
})(jQuery);
