/**
 *
 */ 
(function($)
{
	$.fn.tabBox = function()
	{
		return this.each(function()
		{
			var activeTab = null,
				activeContent = null,
				name = null,
				scope = this;
			
			$(this).find('li a').each(function(index, link)
			{
				if($(link).hasClass('active')) { activeTab = $(link); }
				$(link).click(tabClickEvent);
			});

			$(this).find('div.tabcontent > div').each(function(index, content) { $(content).hide(); });

			if(window.location.hash) {
				name = window.location.hash.substring(1);
				if(selectTabByName(name)) { return; }
			}
			name = $(this).find('ul.tabs li:first-child a').attr('name').match(/(.+)/i)[1];
			selectTabByName(name);

			function tabClickEvent(e) { selectTabByName(e.target.name.match(/(.+)/i)[1]); }
			
			function selectTabByName(name)
			{
				if(!name) { return false; }
				if(activeTab != null && activeContent != null)
				{
					activeContent.hide();
					activeTab.removeClass('active');
					activeContent = null;
					activeTab = null;
				}
				
				activeTab = $(scope).find('ul.tabs li a[name*=' + name + ']');
				
				if(activeTab.length) {
					activeContent = $('#tb_' + name).fadeIn('medium');
					activeTab.addClass('active');
					return true;
				}
				
				return false;		
			}
		});
	}
})(jQuery);

