(function( $ ){
	var tabsObject = function() {
		this.settings = { initTab : 0 };
		var me = this;
		var el, tabs;
		var tabNames = [];
		
		this.init = function( options ) {
			el = this;
			// Hide all tabs but first
			$('li', el).not(':eq(' + me.settings.initTab + ')').hide();
			
			// Get tab names
			$('li', el).each(function() {
				tabNames.push( $(this).attr('name') );
			});
			
			// Show tabs
			tabs = $('<ul class="tabsheader clearfix"></ul>');
			$(el).before(tabs);
			for(var i in tabNames) {
				tabs.append('<li><a href="#' + tabNames[i] + '">' + tabNames[i] + '</a></li>');
			}
			$('li:eq(' + me.settings.initTab + ')', tabs).addClass('active');
			$('li a', tabs).click(me.showTab);
		}
		
		this.showTab = function(e) {
			e.preventDefault();
			var index = $(this).closest('li').index();
			
			// Show tab
			$('li', el).hide();
			$('li:eq(' + index + ')', el).show();
			
			// Update tabNames
			$('li.active', tabs).removeClass('active');
			$('li:eq(' + index + ')', tabs).addClass('active');
			
		}
	}
	
	$.fn.tabs = function( options ) {
		return this.each(function() {
			var mytabsobject = new tabsObject();
			mytabsobject.init.call(this, options);
		});
	};

})( jQuery );

