var KnowbiBanner=new Class({
	
	initialize: function(options) {
		this.options = Object.extend({
			capa: null,		// Capa que contiene los Banners
			tiempo:null,		// Tiempo de rotacion
			tiempoTransicionEntra:null,		// Tiempo de transicion entrada
			tiempoTransicionSale:null		// Tiempo de transicion salida
		}, options || {});
		if(!$(this.options.capa)) return;
		//var capa,tiempo,width,intervalo,total,actual,capaFx;
		this.capa = $(this.options.capa).getFirst();
		this.tiempo = parseInt(this.options.tiempo)*1000;
		this.tiempoTransicionEntra = (this.options.tiempoTransicionEntra);
		this.tiempoTransicionSale = (this.options.tiempoTransicionSale);
		this.width = $(this.options.capa).getSize().size.x;
		this.intervalo=0;
		this.total=0;
		this.actual=0;
		//this.capaFx=new Fx.Styles(this.capa,{wait:false,duration:500,transition:Fx.Transitions.Quint.easeOut});
		this.fxEntra='';
		this.fxSale='';
		this.imgEntra='';
		this.imgUltima='';
		this.iniciar();
	},
	iniciar:function(){
		this.total=$(this.options.capa).getElements('div.knowbi_banner').length;
		$(this.options.capa).getElements('div.knowbi_banner').each(function(elm,i){
			if(i>0){elm.setStyles({'opacity':0});}
		});
		//console.log('TOTAL: '+this.total);
		$(this.options.capa).getElements('ul.knowbi_banners_botones li')[0].getFirst().setStyle('background','#444');
		this.resetearTiempo();
	},
	avanzar:function(){
		//console.log('Avanzando...');
		this.actual++;
		this.mover(this.actual);
	},
	mover:function(num){
		//console.log('Actual: '+ this.actual);
		//console.log('Num: '+ num);
		this.actual=(num<this.total)?num:0;
		
		if(this.imgUltima){
			try{this.fxSale.stop();}catch(E){}
			//console.log(this.tiempoTransicionSale);
			this.fxSale=new Fx.Styles(this.imgUltima,{wait:false,duration:this.tiempoTransicionSale,transition:Fx.Transitions.Quint.easeOut});
			this.fxSale.start({'opacity':0});
		} //console.log('No existe imgSale: '+aux);
		
		this.imgEntra=$(this.options.capa).getElements('div')[this.actual];
		if(this.imgEntra){	
			try{this.fxEntra.stop();}catch(E){}
			this.fxEntra=new Fx.Styles(this.imgEntra,{wait:false,duration:this.tiempoTransicionEntra,transition:Fx.Transitions.Quint.easeOut});
			this.fxEntra.start({'opacity':1});
			this.imgUltima=this.imgEntra;
		} //console.log('No existe imgEntra: '+this.actual);
		
		//var aux=(num<this.total)?num-1:this.total-1;
		//this.imgSale=$(this.options.capa).getElements('div')[aux];
		
		
		var lis=$(this.options.capa).getElements('ul.knowbi_banners_botones li');
		this.debug(lis.length);
		for(i=0;i<lis.length;i++){
			var aLis=lis[i].getFirst();
			if(i!=this.actual)aLis.setStyle('background','none');
				else aLis.setStyle('background','#444');
		}
	},
	resetearTiempo:function(){
		this.intervalo=this.avanzar.periodical(this.tiempo,this);
	},
	debug:function(v){
		try{$('espacio').setHTML($('espacio').getText()+' '+v);}catch(E){}
	}
});
