/**
 * @author Vadim Dalecki
 * @email vdaleckiy@gmail.com
 */


var Toggler = new Class({
	Implements: [Options, Events],
	options:{
		tabs:[],
		containers:[],
		event:'click',
		current:0,
		styleContainerVisible:{'display':'block'},
		styleContainerHidden:{'display':'none'},
		styleTabVisible:{},
		styleTabHidden:{},
		classTabVisible:'active'
	},

	initialize:function(options){
		this.setOptions(options);
		
		this.currentTab = this.options.current;
		
		var me = this;
		
		this.options.tabs.each(function(item, index){
			if(index != me.currentTab){
				this.hide(index);
			}else{
				this.show(index);
			}
			
			item.addEvent(this.options.event, function(){
				if(index != me.currentTab){
					me.hide(me.currentTab);
					me.show(index);
					me.currentTab = index;
				}
			});
		}, this);
		
	},
	
	
	hide:function(index){
		this.options.containers[index].set('styles', this.options.styleContainerHidden);
		this.options.tabs[index].set('styles', this.options.styleTabHidden);
		this.options.tabs[index].removeClass(this.options.classTabVisible);	
	},
	
	show:function(index){
		this.options.containers[index].set('opacity', 0.0);
		
		this.options.containers[index].set('styles', this.options.styleContainerVisible);		
		this.options.tabs[index].set('styles', this.options.styleTabVisible);
		this.options.tabs[index].addClass(this.options.classTabVisible);

		this.options.containers[index].fade(1.0);
		
	}
	
	
});







