var Tabs = Class.create({
	initialize: function(list, tabs, options) {
		this.items	= list;
		this.tabs	= tabs;

		this.options = Object.extend({
			selected: this.tabs.first().id
		}, options || {});

		if (this.items) {
            this.items.invoke('observe', 'click', this.click.bind(this));
        }

		this.selectTab(this.options.selected);
	},

	click: function(event) {
		event.stop();

		var item = event.findElement('a');

		this.selectTab(item.rel);
	},

	selectTab: function(item) {
		this.tabs.invoke('hide');
		this.items.invoke('removeClassName', 'selected');

		$(item).show();
		this.items.find((function(elm) { return elm.rel == item }).bind(this)).addClassName('selected');
	}
});