
	var subir = {
		lista : new Array(),
		efectoT : null,
		efectoA : null,
		porcen : 0,
		ini : function(){
			var des = "Imagenes (*.jpg, *.jpeg, *.gif, *.png)"
			var ext = "*.jpg; *.jpeg; *.gif; *.png"

			$("subir_swf").ini(des,ext,$("subir_formu").action)
			
			$("subir_bar_texto_total").setHTML("0%")
			this.efectoT = new Fx.Style($("subir_bar_texto_total"),"width",
			{
				duration: 200,
				transition: Fx.Transitions.linear,
				wait: false,
				unit: '%'
			}).set(0);
			
			$("subir_bar_texto_actual").setHTML("0%")
			this.efectoA = new Fx.Style($("subir_bar_texto_actual"),"width",
			{
				duration: 200,
				transition: Fx.Transitions.linear,
				wait: false,
				unit: '%'
			}).set(0);
		},
		empezar : function(){
			$("subir_explore").disabled = true
			$("subir_empezar").disabled = true
			
			$("subir_bar_texto_actual").setHTML("0%")
			$("subir_bar_texto_total").setHTML("0%")
			
			this.efectoT.set(0);
			this.efectoA.set(0);
			
			$("subir_swf").subir(0)
			
			//this.porcen = this.lista.length*100
		},
		on_archivo : function(f,k){
			var id = this.dame_id(f,k)			
			
			this.lista[id].estado = 3
			$("borrar_"+id).remove()
			$("lista"+id).className = "subir_lista_archivos_progreso"
			
			this.dato_general()
			
			$("subir_bar_texto_actual").setHTML("0%")
			this.efectoA.set(0);
		},
		progreso : function(f,l,k,p){
			var id = this.dame_id(f,k)
			var total = this.validos()
			
			this.porcen = (id * 100) + p
			var pp = Math.ceil((this.porcen/total)*100)
			//$("debug").setHTML(total)
			$("subir_bar_texto_total").setHTML(""+pp+"%")
			this.efectoT.set(pp);
			
			$("subir_bar_texto_actual").setHTML(""+p+"%")
			this.efectoA.set(p);
		},
		terminar : function(f,k){
			var id = this.dame_id(f,k)
			$("lista"+id).className = "subir_lista_archivos_fin"
			this.cargar_img(id)
		},
		cargar_img : function(id){			
			var img = new Element('img',
			{
				 "id": "pre_img_"+id,
				 "width": 72,
				 "height": 72,
				 "class": "foto"
			});
			
			img.src = "motor/previo.php?file=../imagenes/publico/"+this.lista[id].archivo+"&W=72&H=72"
			//$("debug").setText($("subir_contenedor_img").innerHTML)
			img.injectInside('subir_contenedor_img');
		},
		validos : function(){
			var index = 0;
			for(b=0;b<this.lista.length;b++){
				if(this.lista[b].estado != 2){
					index++;	
				}
			}
			index = index * 100
			return index
		},
		error : function(f,k,t){
			var id = this.dame_id(f,k)
			$("lista"+id).className = "subir_lista_archivos_error";
			if(t == 409){
				$("lista"+id).title = "Mensaje de error :: Ya existe un duplicado"
			}
			//$("debug").setText($("subir_lista").innerHTML)
			var Tips1 = new Tips($("lista"+id), {
				initialize:function(){
					this.fx = new Fx.Style(this.toolTip, 'opacity', {duration: 200, wait: true}).set(0);
				},
				onShow: function(toolTip) {
					this.fx.start(1);
				},
				onHide: function(toolTip) {
					this.fx.start(0);
				}
			});
		},
		explorador : function(){
			$("subir_swf").explorador()
		},
		archivos : function(f,k){
			var _obj = new Object()			
			
			_obj.estado = 1;
			_obj.archivo = f;
			_obj.kb = k;
			
			this.lista.push(_obj)
			
			var numero = this.lista.length - 1
			this.lista[numero].idem = numero
			
			this.lista_add(numero,f,k)
			
			this.dato_general()
		},
		dame_id : function(f,k){
			for(a=0;a<this.lista.length;a++){
				if(this.lista[a].archivo == f && this.lista[a].kb == k){
					return a
				}
			}
		},
		lista_add : function(id,f,k){
			var list = new Element('li',
			{
				 "id": "lista"+id,
				 "class": "subir_lista_archivos",
				  'styles':
				  {
					 "opacity": "0"
				  }
			});
			
			list.setHTML('<span class="subir_lista_titulo">'+f+'</span><span class="subir_lista_kb" title="'+k+' byte">'+Math.ceil(k / 1024)+' KB</span> <a id="borrar_'+id+'" href="javascript: subir.lista_eliminar('+id+')" class="subir_delete">&nbsp;</a>')
			list.injectInside('subir_lista');
			new Fx.Styles(list,
			{
				duration: 200,
				transition: Fx.Transitions.Quart.easeInOut,
				onComplete:function(){
					
				}
			}).start( { "opacity": "1" });
		},
		lista_eliminar : function(id){
			$("lista"+id).className = "subir_lista_archivos_cancel"			
			$("borrar_"+id).remove()
			$("subir_swf").cancelar(this.lista[id].archivo,this.lista[id].kb)
			this.lista[id].estado = 2
			this.dato_general()
		},
		dato_general : function(){

			var kb = 0;
			var t = 0;
			
			var kbp = 0;
			var tp = 0;
			
			var kbn = 0;
			var tn = 0;
			
			var kba = 0;
			var ta = 0;
			
			for(a=0;a<this.lista.length;a++){
				if(this.lista[a].estado == 1){
					kbp = kbp + this.lista[a].kb
					tp++;
				}else if(this.lista[a].estado == 2){
					kbn = kbn + this.lista[a].kb
					tn++;
				}else if(this.lista[a].estado == 3){
					kbp = kbp + this.lista[a].kb
					kba = kba + this.lista[a].kb
					ta++;
					tp++;
				}
				kb = kb + this.lista[a].kb
				t++;
			}
			
			if($("subir_explore").disabled == false){
				if(tp > 0){
					$("subir_empezar").disabled = false
				}else{
					$("subir_empezar").disabled = true
				}
			}
			
			$("subir_arch_total").setHTML(""+t+" archivos")
			$("subir_arch_actual").setHTML("( "+tp+" / "+ta+" ) archivos")
			$("subir_arch_del").setHTML(""+tn+" archivos")
			
			$("subir_kb_total").setHTML(""+Math.ceil(kb / 1024)+" KB")
			$("subir_kb_actual").setHTML("( "+Math.ceil(kbp / 1024)+" / "+Math.ceil(kba / 1024)+" ) KB")
			$("subir_kb_del").setHTML(""+Math.ceil(kbn / 1024)+" KB")
		}
	}