	/**
	* Tabs class
	*/
	var Tabs = function(options) {
		this.initialize(options);
	};

	Tabs.prototype = {
		/**
		 * @var int
		 */
		current : 0,
		/**
		 * @var object
		 */
		options : null,
		
		/**
		* Constructor
		*/
		initialize: function(options) {
			this.options = options;
			$('ul.' + this.options.tabsClassName + ' li:eq('+this.current+')').addClass('selected');
			$('div.' + this.options.tabsContentClassName + ':eq('+this.current+')').css("display","block");
			this.addEvents();
		},
		/**
		* Events
		*/
		addEvents : function () {
				$('ul.' + this.options.tabsClassName + ' li a').bind("click", {options : this.options, self: this}, this.showTab);
		},

		/**
		* Set current tab
		*/
		setCurrentTab : function(_current) {
			var self = this;
			$('ul.' + this.options.tabsClassName + ' li:eq('+this.current+')').removeClass('selected');
			$('div.' + this.options.tabsContentClassName + ':eq('+this.current+')').fadeOut(300, function() { 
				$('div.' + self.options.tabsContentClassName + ':eq('+self.current+')').fadeIn(300);
			});	
			this.current = _current;
			$('ul.' + this.options.tabsClassName + ' li:eq('+self.current+')').addClass('selected');			
		},

		/**
		* Show tab
		*/
		showTab : function (event) {
			event.preventDefault();
			var options = event.data.options;
			var self =  event.data.self;
			var index = $('ul.' + options.tabsClassName + ' li a').index(this);
			self.setCurrentTab(index);
		}
	}; /** End prototype **/