var TaedoMorphTabs = new Class({
	Implements: [Options],
	

	version: '0.1',
 
	options: {
		startTitle: ''
	},
 
	
	initialize: function(element, options) {
		
		this.setOptions(options);
		this.el = $(element);
		this.elid = element;
		this.start_height = this.el.getFirst().getSize().y;
		 
		this.titles = $$('#' + this.elid + ' ul li');
		this.panels = $$('#' + this.elid +' .morphtabs_panel');
		
		this.attach(this.titles);
				
		var title = $(''+this.options.startTitle);
		if(this.options.startTitle=='' || !title)
			this.activate(this.titles[0]);
		else
			this.activate(title);
	},
	
	attach: function(titles)
	{
		var obj = this;
		titles.each(function(el){
			el.addEvent('click', function(){obj.activate(el);});
		});
	},
	
	detach: function(titles)
	{
		var obj = this;
		titles.each(function(el){
			el.removeEvents('click');
		});
	},
	
	activate: function(title)
	{
		var obj = this;
		obj.detach(obj.titles);
		var id = title.get("title");
		var panel = $(id);
		this.panels.each(function(el){el.set('opacity',0);});
		panel.fade(1);
		(function(){obj.el.setStyle('height', panel.getSize().y+obj.start_height+15);}).delay(300);
		this.titles.each(function(el){el.removeClass('active');});
		title.addClass('active');
		
		(function(){obj.attach(obj.titles);}).delay(450);
	}
});