// JavaScript Document

//Configura??o


//Avda Script
var avda = new Object();
var isNav; //se ? estrutura Navigator

function AVD_mantemSonetoTopo(){

	$("#avda").css("top", document.body.scrollTop + "px");

}


function restartAvda(){
	contagemAtt = 0;
	avda.raiz = false;
	avda.debug = false;
	avda.localhost = false;
	if(!avda.localhost)
		avda.url = "soneto/";
	else
		avda.url = "soneto/";
	avda.banco = "img/banco/"; 
	avda.tipoimg = "Sm_Prog001.gif";
	avda.tipoext = ".png";
	avda.txt = ""; //texto selecionado
	avda.txt_ = "";
	avda.txts = new Array(); //array de palavras
	avda.cache = {}; //array de estruturas de videos ja construidos
	avda.ord = 0; //ordenacao do resultado
	avda.ass = 0;
	if(document.getElementById("avda_loading"))
		$("#avda_loading").hide();
	if(document.getElementById("avda_resultado"))
		document.getElementById("avda_resultado").innerHTML = "";
	if(avda.apresentacao && avda.apresentacao > 0)
		window.clearInterval(avda.apresentacao); //apresentacao de imagens
	avda.cont; //contador de palavras auxiliadas
	avda.velo_ = 550; //velocidade de transicao avda.base ( de um video a outro )
	avda.velo = avda.velo_; //velocidade de transicao dinamica
	avda.move = false;
	avda.loop = false;
	avda.mini = false;
	avda.auxilia = false;
	avda.applet = false;
	avda.voz = false;
	avda.trans = false;
	avda.txtExt = false;
	avda.tama;
	avda.imgs = new Array();
	avda.dH = 142; // largura horizontal do applet
	avda.dW = 193; // comprimento do applet

	avda.base = new Array(); // video base
	avda.troca = new Array(); //troca de videos

  if (parseInt(navigator.appVersion) >= 4) {
   if (navigator.appName == "Netscape")
    isNav = true;
   else
    isNav = false;

  }

 //Detecta evento do tipo mouseup e chama a funcao de auxilio, qdo seleciona video
	 $("body").mouseup(function(e){
			
			setTimeout(function(){
				try{
					var selecao = recuperarSelecionado();	
					if(!selecao || selecao == "" || selecao.toString() == "")
						return;
					avda.txt_ = selecao;
					avda.txt_ = avda.txt_.toString();
				}catch(e){
					if(avda.debug)	
						alert("erro")
				}
			}, 500);
	});

	if(!isNav && $.browser.version.indexOf("6") != -1){
		window.onscroll = AVD_mantemSonetoTopo;
		AVD_mantemSonetoTopo();
	}
}

$(document).ready(function(){
	
	
  
	restartAvda();

	
	if(typeof AVD_setarCustomURL == "function")
		AVD_setarCustomURL();

    //constroi component
    AVD_constroi();
  	
	avda.temp = $("#avda_temp");
	avda.corpo = $("#avda");
	avda.fade = $("#avda_fade");
	avda.fade.css("opacity", "0");
	avda.load = $("#avda_load");
	avda.conteudo = $("#avda_conteudo");
	
	avda.loadgif = new Image();
	avda.loadgif.src = avda.url + "img/loadinfo.gif";
	
	if(avda.debug)
		avda.debox = $("#debug");
	
	avda.corpo.draggable({
	   start: function(event, ui) { 
	   
	   		avda.move = true;
			$("#avda_resultado").hide();
	   },
	   stop: function(event, ui){
		    $("#avda_resultado").show();
	   }
	});
	
	avda.corpo.resizable({ aspectRatio: .772, 
				   		   ghost: false, 
						   minHeight: 180, 
						   minWidth: 170, 
						   start: function(event, ui){
							   
							   avda.move = true;
							   $("#avda_resultado").hide();

						   },
						   stop: function(event, ui){
							   
						   	   avda.move = false;
							   $("#avda_resultado").show();
							   var obj = $("#avda embed");
						
									   
							   avda.dW = ui.size.width*0.99 - 10;
							   avda.dH = ui.size.height*0.75 - 80;
							   obj.attr("width", avda.dW);
							   obj.attr("height", avda.dH);
							   obj = $("#avda_fade");
							   obj.css("width", avda.dW - 10);
							   obj.css("height", avda.dH);
						   }
					});
	
	 //Detecta evento do tipo mouseup e chama a fun??o de aux?lio
	 /*$("body").mouseup(function(e){
								  
					auxilia();
					
	});*/
	 
	 /*avda.corpo.mouseover(function(e){
		
		if(!avda.voz)
			carregarSoneto();
		
	});*/
	 
	 $("#avda_controle img").mouseup(function(e){
											  
									avda.move = true;	
									
											  });
	
	 
});

//insere um iframe contendo a applet para pré-carregamento, no momento da selecao do video
function constroiIframe(){
	
	var avdaV = $("body");
	avdaV.append("<iframe frameborder=\"0\" scrolling=\"no\" src=\"" + avda.url +  "iframe.html\" width=\"1\" height=\"1\" style=\"visibility:hidden\"></iframe>");	
}


//Constroi o componente assim que o DOOM e completamente carregado, monta o painel de controle com os respectivos botoes
function AVD_constroi(){
	
	var avdaV = $("body");
	avdaV.append("<div id=\"avda\" style='display:none'></div>");
	if(avda.debug)
		avdaV.append("<div id=\"debug\" class=\"debug\"></div>");
		
	avdaV = $("#avda", avdaV);
	avdaV.append("<div class=\"bordaBox\" id=\"avda_box_controle\"></div>");
	avdaV = $("div.bordaBox", avdaV);
	avdaV.append("<b class=\"b1\"/><b class=\"b2\"/><b class=\"b3\"></b><b class=\"b4\"></b>");
	avdaV.append("<div id=\"avda_controle\" align=\"center\">");
	var avda_c = $("#avda_controle", avdaV);
	avda_c.append("<img src=\"" + avda.url + "img/control_less" + avda.tipoext + "\" id=\"avda_img_less\" onclick=\"reduz()\"/>");
	avda_c.append("<img src=\"" + avda.url + "img/control_more" + avda.tipoext + "\" id=\"avda_img_more\" onclick=\"acelera()\"/>");	
	avda_c.append("<img src=\"" + avda.url + "img/control_pause" + avda.tipoext + "\" id=\"avda_img_pause\" onclick=\"pausa(true)\"/>");
	avda_c.append("<img src=\"" + avda.url + "img/control_play" + avda.tipoext + "\" onclick=\"inicia()\"/>");
	avda_c.append("<img src=\"" + avda.url + "img/control_close" + avda.tipoext + "\" onclick=\"alterna(true)\"/>");
	avda_c = null;
	avdaV.append("<b class=\"b4\"></b><b class=\"b3\"></b><b class=\"b2\"></b><b class=\"b1\"></b>");
	avdaV = $("#avda");
	avdaV.append("<div class=\"bordaBox avda_preconteudo\"></div>");
	avdaV = $("div.avda_preconteudo", avdaV);
	avdaV.append("<div><b class=\"b1\"/><b class=\"b2\"/><b class=\"b3\"></b><b class=\"b4\"></b></div>");
	avdaV = $("div", avdaV);	
	avdaV.append("<div><div id=\"avda_conteudo\"></div></div>");
	avdaV = $("#avda_conteudo", avdaV);
	
	

	avdaV.append("<div id=\"avda_resultado\"></div><img id=\"avda_loading\" src=\"" + avda.url + "img/loadinfo.gif\"  style=\"display:none; margin:5% 0;\"/><div id=\"avda_fade\"></div>");	
	avdaV.append("<div style=\"display: \" id=\"avda_temp\"></div>");
	avdaV = avdaV.parent();
	//avdaV.append("<b class=\"b4\"></b><b class=\"b3\"></b><b class=\"b2\"></b><b class=\"b1\"></b>");
	avdaV = avdaV.parent();
	avdaV.append("<b class=\"b4\"></b><b class=\"b3\"></b><b class=\"b2\"></b><b class=\"b1\"></b>");
	avdaV = $("#avda", "body");
	avdaV.append("<div align=\"right\"></div>");
	//<img id=\"avda_voz_ico\" src=\"" + avda.url + "img/voz_off" + avda.tipoext + "\" title=\"Modo Voz\" style=\"padding:0 4px;\" onclick=\"AVD_voz()\"/>
	//<img id=\"avda_logo\" src=\"" + avda.url + "img/logo" + avda.tipoext + "\" title=\"Aux?lio Visual para Deficientes Auditivos\" style=\"vertical-align:top\"></img>
	avdaV.append("<div id=\"avda_load\"></div>");
	avdaV.append("<div id=\"avda_pro\"></div>");
	avdaV = $("#avda_load", avdaV);
	
	/*var cs = recuperarAlfabetoApplet();
	for(c in cs){
		avdaV.append(recuperarObjetoSwf(cs[c]));
	}*/

}



function carregarSoneto(){
	
	if(!avda.applet){
			if(avda.localhost)
				$("body").append("<div id='divDoApplet'><APPLET id=\"avda_applet\" NAME=\"avda_applet\" archive=\"" + avda.url + "soneto.jar\"  codebase=\"" + avda.url + "\" CODE=\"soneto/applet/Soneto.class\" WIDTH=\"0px\" HEIGHT=\"0px\"></APPLET></div>");/*<PARAM NAME=\"TEXTO\" VALUE=\""+ avda.txt +"\">*/
			else{
				
				$("body").append("<div id='divDoApplet'><APPLET id=\"avda_applet\" NAME=\"avda_applet\" CODE=\"soneto/applet/Soneto.class\" CODEBASE=\"" + avda.url  + "/\" archive=\"soneto.jar\"  WIDTH=\"0\" HEIGHT=\"0\"><param name=\"java_arguments\" value=\"-Xmx128m\"/></APPLET></div>");/*<PARAM NAME=\"TEXTO\" VALUE=\""+ avda.txt +"\">*/
			}
	
			avda.applet = true; // uma vez o applet carregado, não carregará mais.
			
			
			window.setTimeout(function(){
				voltaLogo();
			}, 300/*2000*/); // leva 2000 para carregar o metodo voltaLogo
			
	}	
	
}

//Func??o principal chamada para iniciar o processo de aux?lio
function auxilia(){
	
	try{
	
		//Recupera texto selecionado
		//avda.txt_ = avda.txt_.toString();

	
		if(avda.txt_.length == 0){ //verifica o comprimento do texto selecionado no site
				$("#avda_loading").toggle();
				alert('Por favor, selecione um texto');
				return;
		}else
			avda.txt = avda.txt_; // recebe o texto selecionado pelo utilizador.
	
		if(avda.move && avda.auxilia){
			avda.move = false;
			$("#avda_loading").toggle();
			return;
		}
				
			
		while(avda.txt.indexOf("\r\n") >= 0)
			avda.txt = avda.txt.replace("\r\n", " ");   
		
		while(avda.txt.indexOf("\"") != -1)
			avda.txt = avda.txt.replace("\"", "");

		while(avda.txt.indexOf("#") != -1)
			avda.txt = avda.txt.replace("#", "");
		
		while(avda.txt.indexOf(",") != -1)
			avda.txt = avda.txt.replace(",", " ");
		

		while(avda.txt.indexOf("?") != -1)
			avda.txt = avda.txt.replace("?", " ponto interroga??o ");
		
		while(avda.txt.indexOf("/") != -1)
			avda.txt = avda.txt.replace("/", " \\barra ");
		
		while(avda.txt.indexOf("\\barra") != -1)
			avda.txt = avda.txt.replace("\\barra", " / ");

		
		
		/*while(avda.txt.indexOf(".") != -1)
			avda.txt = avda.txt.replace(".", "");	*/
		
		//BRB
		while(avda.txt.indexOf("(**)****") != -1)
			avda.txt = avda.txt.replace("(**)****", " asterisco ");	

		while(avda.txt.indexOf("*") != -1)
			avda.txt = avda.txt.replace("*", " asterisco ");	
		
		while(avda.txt.indexOf("+") != -1)
			avda.txt = avda.txt.replace("+", " mais ");
		
		while(avda.txt.indexOf("(") != -1)
			avda.txt = avda.txt.replace("(", " ");
		
		while(avda.txt.indexOf(")") != -1)
			avda.txt = avda.txt.replace(")", " ");
		
		var index;
		formatarEspeciais(".", "ponto1");
		formatarEspeciaisNumero("-", "menos");
		formatarEspeciaisLetra("a", "");
		formatarEspeciais(",", "virgula");
		
		/*while((index = avda.txt.indexOf("/")) != -1){
			if((index >= 0
					&& avda.txt.charAt(index - 1) >= '0' && avda.txt.charAt(index - 1) <= '9')
					|| (index >= 1
					&& avda.txt.charAt(index - 2) >= '0' && avda.txt.charAt(index - 2) <= '9'))
				avda.txt = avda.txt.replace("/", " dividido por ");
			else
				avda.txt = avda.txt.replace("/", "\\barra");
		}
		
		while((index = avda.txt.indexOf("\\barra")) != -1)
			avda.txt = avda.txt.replace("\\barra", "/");*/
		
		avda.imgs = new Array();
	
	
		//Reseta html da div resultados e do load
		//$("#avda_resultado").html("");
		document.getElementById("avda_resultado").innerHTML = "";
		//document.getElementById("avda_pro").innerHTML = "";
		
		avda.load[0].innerHTML = "";
		swfobject.removeSWF("avda_swfvid");
		
	
		//Subdivide por palavras (verificar erro em alguns browsers)
		avda.txts = formatarTextoApplet(avda.txt).split("#");		
		//avda.txt = "";		
		avda.txt = avda.txt_;
		//Reseta contador
		avda.cont = recuperarContagemApplet();
		avda.ord = 0;
		avda.ass = 0;
		avda.loop = false;
	
		//Limpa repeti??o de apresenta??o
		pausa();
		
		//Itera palavras
		for(avda_pos = 0; avda_pos < avda.txts.length; avda_pos++){
			//Caso palavra tenha mais que duas letras
			
			if(avda.txts[avda_pos].length > 0 || verificarDigitoApplet(avda.txts[avda_pos])){
			
				avda.auxilia = true;
				nomes = avda.txts[avda_pos].split("\\");
				if(avda_pos + 1 < avda.txts.length)
					nomes = nomes.concat(avda.txts[avda_pos + 1].split("\\"));
				
				logar("buscando " + nomes);				
				buscarImagem(nomes);
				
			}
				
		}
		
		if(!avda.auxilia)
			$("#avda_loading").hide(0);
		
	}catch (ex){
		$("#avda_loading").hide(0);
		avda.auxilia = false;
		alert(ex);	
	}
	


	//Chama verifica??o de t?rmino de carregamento
	//avda.apresentacao = window.setInterval(verificarApresentacao, 160 * avda_cont);
}

function formatarEspeciais(esp, sub){
	
	var index;
	while((index = avda.txt.indexOf(esp)) != -1){
		if((index > 0
				&& avda.txt.charAt(index - 1) >= '0' && avda.txt.charAt(index - 1) <= '9')
		   ||
		   (index > 1
				&& avda.txt.charAt(index - 2) >= '0' && avda.txt.charAt(index - 2) <= '9')


													)
			avda.txt = avda.txt.replace(esp, " "+sub+" ");
		else
			avda.txt = avda.txt.replace(esp, "\\"+sub);
	}
	
	while((index = avda.txt.indexOf("\\"+sub)) != -1)
		avda.txt = avda.txt.replace("\\"+sub, esp);

}


function formatarEspeciaisNumero(esp, sub){
	
	var index;
	while((index = avda.txt.indexOf(esp)) != -1){
		if(((index > 0
				&& avda.txt.charAt(index - 1) > '0' && avda.txt.charAt(index - 1) <= '9')

		   ||
		   (index > 1
				&& avda.txt.charAt(index - 2) >= '0' && avda.txt.charAt(index - 2) <= '9'))

		  &&

		   (index == avda.txt.length - 1 || (avda.txt.charAt(index) < '0' &&  avda.txt.charAt(index) > '9'))


													)
			avda.txt = avda.txt.replace(esp, " "+sub+" ");
		else
			avda.txt = avda.txt.replace(esp, "\\"+sub);
	}
	
	while((index = avda.txt.indexOf("\\"+sub)) != -1)
		avda.txt = avda.txt.replace("\\"+sub, esp);

}

function formatarEspeciaisLetra(esp, sub){
	
	var index;
	while((index = avda.txt.indexOf(esp)) != -1){
		
		if(   ((index > 0 && avda.txt.charAt(index - 1) == " ") || (index == 0)) && (avda.txt.length - 1 > index && avda.txt.charAt(index + 1) == " "))
			avda.txt = avda.txt.replace(esp, " "+sub+" ");
		else
			avda.txt = avda.txt.replace(esp, "\\"+sub);
		
	}
	
	while((index = avda.txt.indexOf("\\"+sub)) != -1)
		avda.txt = avda.txt.replace("\\"+sub, esp);

}

function AVD_constroiListasApplet(dicionario){
	
	var applet = document.avda_applet;
	if(!dicionario)
		return;
	
	if(dicionario.videos)
		applet.carregarLista(dicionario.videos, "videos");
	if(dicionario.comuns)
			applet.carregarLista(dicionario.comuns, "comuns");			
	if(dicionario.nomes)
			applet.carregarLista(dicionario.nomes, "nomes");	
	if(dicionario.sufixos)
			applet.carregarLista(dicionario.sufixos, "sufixos");
	if(dicionario.auxiliaresN)
			applet.carregarLista(dicionario.auxiliaresN, "auxiliaresN");
	if(dicionario.auxiliaresV)
			applet.carregarLista(dicionario.auxiliaresV, "auxiliaresV");			
	if(dicionario.pessoas)
			applet.carregarLista(dicionario.pessoas, "pessoas");
	if(dicionario.particulas)
		applet.carregarLista(dicionario.particulas, "particulas");
	if(dicionario.sinonimos)
		applet.carregarLista(dicionario.sinonimos, "sinonimos");
} 

//### INTERFACE APPLET ###//

function verificarDigitoApplet(digito){
	
	if(!digito || digito.length == 0)
		return false;
	
	var applet = document.avda_applet;
	return (applet.verificarDigito(digito));	
}

function recuperarContagemApplet(texto){
	
	var applet = document.avda_applet;
	return (applet.contarPalavras());	
} 

function formatarPalavraApplet(plv){

	if(!plv || plv.length == 0)
		return plv;
		
	var applet = document.avda_applet;
	return (applet.formatarPalavra(plv));	
}

function formatarTextoApplet(texto){
	
	var applet = document.avda_applet;
	var ret = applet.formatarTexto(texto);	
	return ret;
}

function recuperarAlfabetoApplet(){
	
	var applet = document.avda_applet;
	return applet.recuperarAlfabeto().split("#");
}

function falarTextoApplet(texto){
	
	var applet = document.avda_applet;	

	return applet.falarTexto(texto.toString());
}

function ajustaFalaApplet(delta){
	
	var applet = document.avda_applet;	
	return applet.ajustarFala(delta);
}

function avdaAppletOk(){
	var applet = document.avda_applet;
	//alert('applet : ' + applet);
	return typeof(applet) != 'undefined' && typeof(applet.formatarTexto) != 'undefined';
}

//Inicia apresenta??o -> qdo clica no botao play
function inicia(){
	
	if(!avdaAppletOk()){
		alert("Componente sendo carregado, por favor aguarde.");
		return;
	}
		
	if(avda.voz && avda.txt_ && avda.txt_ != ""){
		//sayText(avda.txt_, 2, 6, 4);

		avda.txt_ = verificarPadroesStr(avda.txt_);

		falarTextoApplet(avda.txt_);
		
	}else{
		
		//pausa(true);
		//alert('auxilia = ' + (avda.auxilia) + '  e apresentacao = ' + avda.apresentacao);

		if(!avda.auxilia || (avda.apresentacao && avda.apresentacao != 0) || (avda.txt != "" && avda.txt_ != "" && avda.txt != avda.txt_)){
			
			
			if(avda.txt_ && avda.txt != "")				
				avda.txtExt = false;	
			//alert(avda.txt_);
	
			avda.auxilia = false;
			$("#avda_loading").toggle();
			window.setTimeout(function(){
				auxilia();
			}, 500);
			
			
			$("#avda_resultado").show();
		
		
			return;
		}
		
		//if(avda.apresentacao /*&& avda.apresentacao*/ != 0)
			//return;
		//alert('comentado!!!');
		
		$("#avda_img_pause").attr("src", avda.url + "img/control_pause" + avda.tipoext + "");
	
		var avda_itens = $("#avda_resultado").find("div.avda_item");
		//alert('avda_itens : ' + avda_itens);
		//alert('avda_itens value : ' + avda_itens.value);
		//alert('avda_itens : ' + avda_itens.length);
		if(avda_itens.length == 0)
			return;
			
		if(avda_itens.length >= 1){
			
			window.setTimeout(function(){
									   
				var swf = apresenta(avda_itens);
				
				avda.apresentacao = window.setInterval(function(){
		
					if(!swf) {
						swf = apresenta(avda_itens);
						//alert('Entrou_01 : ' + swf);
					}
					ajustarAlturaConteudo(10, true);
					//alert('ajustarAlturaConteudo(10, true) : ' + ajustarAlturaConteudo(10, true));	
					try{
						//alert('swf.PercentLoaded()' + swf.PercentLoaded());
						//alert('swf.IsPlaying()' + swf.IsPlaying());
						if(swf.PercentLoaded() == 100 && !swf.IsPlaying()){
							
							ajustarAlturaConteudo(10, true);
							if(!avda.trans){
								avda.trans = true;	
								window.setTimeout(function(){
																					   
									swf = apresenta(avda_itens);
								}, 80/*avda.velo*/);
							}
							
						}
							
					}catch(e){
						
					}
					
				}, 300);	
				
					
			}, 1000);
			
		}else{
			
			adicionaVideo(avda_itens[0]);
			//alert('Entrou_Else : ' + adicionaVideo(avda_itens[0]));
			ajustarAlturaConteudo(400, true);
			avda.auxilia = false;
		}
	}
} 

function playControl(swf){

	
	avda.onPlay = true;
	avda.onPlay2 = true;
	return;
	
	avda.go = window.setInterval(function(){
		
		
		try{
			if(avda.onPlay = !avda.onPlay ){
				swf.StopPlay();
			}
			else{
				//alert('Entrou no play');
				swf.Play();
			}
				
		}catch(e){
				
		}
		
		
	}, avda.velo/100);
}

function recuperarDelay(avda_itens){
	
	return 0;
	var d = 0;
	var t;
	for(c = 0; c < avda_itens.length; c++){
		
		t = parseFloat(avda_itens[c].time); 
		d += (t)/(c + 1);
		avda_itens[c].time = t/2;
	}
	
	return (d * 20 / avda_itens.length);
}

function ajusta(velo){
	
	//pausa();
	avda.velo = velo;
	
	//inicia();
	
}

//Controla apresenta??o das imagens
function apresenta(avda_itens){
	
	//alert('Entrou_Apresenta');
	
	if(avda_itens.length <= 0)
		return;
	
	var avda_img_sai = avda_itens[avda_pos];
	//alert('avda_img_sai : ' + avda_img_sai);
	if(avda_img_sai){
		$(avda_img_sai).hide(0);
	}
			
	avda_pos++;
	if(avda_pos >= avda_itens.length)
		if(avda.loop){
			encerrar();
			return;
		}
		else{
			avda_pos = 0;
			avda.loop = true;	
		}
		
	if(avda_pos >= 6);
//		jQuery(avda.load.children()[0]).remove();

	var avda_img_entra = avda_itens[avda_pos];
		
	window.setTimeout(function(){
		if(avda_itens[avda_pos + 2]){
			var tit = avda_itens[avda_pos + 2].title;
			//var apd = recuperarObjetoSwf(tit, avda.load, "avda_swfvid_" + tit);
			//var swf = recuperarObjetoSwf(tit, avda.load, "avda_swfvid_" + tit);
			var swf = recuperarObjetoSwf(tit, avda.load, "avda_swfvid_" + tit);
			setTimeout(function(){
							swfobject.removeSWF("avda_swfvid_" + tit);
			}, 5000);
		}
	}, 1000);

	var swf = adicionaVideo(avda_img_entra);
	
		
	//Caso img seja letra
	var letra = avda_img_entra.title.length == 1;
	
	if(letra && avda.velo == avda.velo_)
		ajusta(avda.velo_/1.5);
	
	if(!letra && avda.velo != avda.velo_)
		ajusta(avda.velo_);
	  
	 
	 $(avda_img_entra).show(0);
		 
	
	/*avda.fade.show(300);
	avda.fade.animate({
	    opacity: .7
	  }, 80);
	avda.fade.animate({
	    opacity: 0
	  }, 320);
	avda.fade.hide(300);*/
	
	avda.trans = false;
	
	return swf;
}

function encerrar(){
	
		avda.loop = false;
		pausa();
		ajustarAlturaConteudo(300, false);
		avda_pos--;
		avda.auxilia = false;
		swfobject.removeSWF("avda_swfvid");	
		$("#avda_resultado")[0].innerHTML = "";
}

function ajustarAlturaConteudo(time, flow){
	
	if(!avda.conteudo)
		avda.conteudo = $("avda_conteudo");
	
	avda.conteudo.css("height", "");
		
	setTimeout(function(){
		
		if(flow)
			avda.conteudo.css("height", avda.conteudo.height());
		else
			avda.conteudo.css("height", "");
	}, time);
	
}

function adicionaVideo(avda_item){
	
	swfobject.removeSWF("avda_swfvid");
	
	if(avda_item.title >= "0" && avda_item.title <= "9")
		return null;
	
	return recuperarObjetoSwf(avda_item.title, $("#avda_conteudo"), "avda_swfvid");
}

function removerElemento(ele){
	
	if(!ele.parent)
		ele = $(ele);
	
	if(isNav){
		ele.remove(); 								
		ele = null;
	}else{
		
		ele.parent()[0].removeChild(ele.parent()[0].childNodes[0]);
		ele[0].removeNode(true);
	}
	
}


//Reduz velocidade de apresenta??o
function reduz(){
	
	if(avda.voz)
		ajustaFalaApplet(-10);
	else{
		$("#avda_img_more").attr("src", avda.url + "img/control_more" + avda.tipoext + "");
		avda.velo_ += 500; //reduz velocidade
	
		if(avda.velo != avda.velo_)
			ajusta(avda.velo_/1.5); //altera velocidade	
		else
			ajusta(avda.velo_); //altera velocidade	
	}
}

//Aumenta velocidade de apresenta??o
function acelera(){ 
	
	if(avda.voz)
		ajustaFalaApplet(10);
	else{
		if(avda.velo_ - 500 >= 0){
			avda.velo_ -= 500; //reduz velocidade
			if(avda.velo_ - 500 < 0)
				$("#avda_img_more").attr("src", avda.url + "img/control_more_off" + avda.tipoext + "");
		}else
			return;
	
		if(avda.velo != avda.velo_)
			ajusta(avda.velo_/1.5); //altera velocidade	
		else
			ajusta(avda.velo_); //altera velocidade	
	}
}


function intervalo(){
	
	
	pausa();
	setTimeout(function(){
		
		inicia();
		
	}, 1000);
}

function pausa(){
	pausa(false);
}
//Pausa apresenta??o
function pausa(obj){
	
	if(avda.voz)
		stopSpeech();
	else{
		
		// some imagem e texto
		if (obj){
			//alert(document.getElementById("avda_resultado").innerHTML);
			//document.getElementById("avda_resultado").innerHTML = "";
			//document.getElementById("avda_pro").innerHTML = "";
			//alert($("#avda_resultado").value);
			//swfobject.removeSWF("avda_swfvid");
			//ajustarAlturaConteudo(10, true);
			if(avda.apresentacao != 0){
				$("#avda_img_pause").attr("src", avda.url + "img/control_stop" + avda.tipoext + "");
				$("#avda_resultado").show();
			}else{
				encerrar();
					
			}
			//alterna();e
		}
		//swfobject.removeSWF("avda_swfvid");	
		
		clearInterval(avda.apresentacao);
		
		avda.apresentacao = 0;
	}
}


function alterna(){
	alterna(false);
	
}

//Alterna tamanho janela
function alterna(obj){

	$("#avda_resultado").toggle();
	swfobject.removeSWF("avda_swfvid");	
	ajustarAlturaConteudo(300, true);
	
	
	
	if (obj){
		pausa(true);
		$("#avda_resultado").show();
		//restartAvda();
		document.getElementById('avda').style.display='none';
		
	}
	
	
	/*if(!avda.mini){
		avda.tama = avda.corpo.css("height");
		avda.corpo.css("height", "70px");
	}
	else
		avda.corpo.css("height", avda.tama);
		
	avda.mini = !avda.mini;*/
}


//Busca de imagens
function buscarImagem(nomeImagem, pos, des, nomeImagemC){
	
	//Sincronia inicial
	var img = new Image(); //imagem a ser criada
	var avda_obj = new Object();
	
	avda_obj.txt = nomeImagem[0];
	avda_obj.ori = nomeImagem[1];
	if(nomeImagem.length > 2)
		avda_obj.pro = nomeImagem[2];


	//logar("imagem " + nomeImagem);
	nomeImagem = nomeImagem[0];
	var nomeFormatado;
	if(nomeImagem != '?' && nomeImagem != '/')
		nomeFormatado = formatarPalavraApplet(nomeImagem);
	else if(nomeImagem == '?')
		nomeFormatado = '?';
	else if(nomeImagem == '/')
		nomeFormatado = 'barraS';
	
	if(nomeFormatado == ""){
		avda.cont--;
		return;
	}else
		if(nomeFormatado == "null")
			nomeFormatado = nomeImagem;
	
	
	if(!nomeImagemC)
		avda_obj.txt_ = nomeImagem;
	else
		avda_obj.txt_ = nomeImagemC;
		
	avda_obj.nome = nomeFormatado;
	avda_obj.num = 0;
	avda_obj.img = img;
	avda.ord += nomeImagem.length;
	if(!pos){
		avda_obj.pos = avda.ord;
		avda_obj.des = -1;	
	}
	else{
		avda_obj.pos = pos + des;
		avda_obj.des = des;	
	}
		
	avda_obj.posok = false;
	
	//Nova sincronia
	img.onerror= function(e){
		
		if(nomeImagem.length <= 1){
			        
					img.src = avda.url + avda.banco + "ghost.gif";
					avda.bunda = true;
					avda.cont--;
					 if(avda.ass == avda.cont){
						 avda.imgs.sort(compararOrdem);
						 escreverImagems();
					 } 
					
					return true;
		}
		

		logar("n?o achou " + avda_obj.nome + avda_obj.num);
		/*if(++avda_obj.num < 3){
			logar("buscando add " + avda_obj.nome + avda_obj.num);
			//Tenta encontrar imagens com op??es m?ltiplas
			//Math.floor(Math.random()*5);
			
			avda_obj.img.src = avda.banco + avda_obj.nome + avda_obj.num +avda.tipoimg;
			avda_obj.posok = true;
			return;
		}*/
		
		//N?o existindo, quebra palavra e carrega imagens de suas letras
		
		var letras = nomeImagem.split("");
		var n_pos = avda_obj.pos - letras.length + 1;
		avda.cont += letras.length - 1;
		

		for(var j = 0; j<letras.length; j++){
			
			strs = new Array(letras[j], letras[j]);
			buscarImagem(strs, n_pos, j, avda_obj.txt);
		}
	}
	
	img.onload = function(){
		
		if(img.src.indexOf("ghost.gif") != -1)
			return;
		//avda_obj.time = (new Date().getTime()) - avda_obj.time;
		if(avda_obj.num > 0)
			avda_obj.nome += avda_obj.num;
		
		logar("encontrada " + avda_obj.nome);
		avda.imgs[avda.ass] = avda_obj;
		//alert(1 + avda.ass + " " + avda.cont);
		logar("buscadas " + avda.ass + " imagens de " + avda.cont);
		if(++avda.ass == avda.cont){
			avda.imgs.sort(compararOrdem);
			escreverImagems();
		}
	}
	
	//avda_obj.time = new Date().getTime();
	if(!avda_obj.posok)
		if(nomeFormatado != '?')
			img.src = avda.url + avda.banco + nomeFormatado + avda.tipoimg;
		else
			img.src = avda.url + avda.banco + 'cedil' + avda.tipoimg;
}

//Fun??o principal que recebe imagem e preenche o html correspondente
function escreverImagems(){

	
	var avda_res = $("#avda_resultado");
	for(k = 0; k < avda.imgs.length; k++){
	  	  var obj = avda.imgs[k];
		  var img_box;
		  //if((img_box = avda.cache[obj.txt]) == null){
			  img_box = $(document.createElement("div"));
			  img_box[0].className = "avda_item";
			  if(obj.nome)
				  img_box.attr("title", obj.nome);
			  img_box.append("<span class=\"avda_sub\"></span>");
			  //avda.cache[obj.txt] = img_box; 
		  //}
		  $("span.avda_sub", img_box).html(escreverLegenda(obj.txt, obj.txt_, obj.ori, obj.des));
		  
		  avda_res.append(img_box);

		  if(avda.cont != 1)
			  $(img_box).hide(0);
		  
		  logar("escrito v?deo n? " + k + " de " + avda.imgs.length);
			  
		  if(k == avda.imgs.length - 1){
				avda_pos = avda.cont - 1;
				//avda.delay = recuperarDelay(avda.imgs);
				
				//setTimeout(function(){
					
					$("#avda_loading").toggle();
					inicia();
				//},  k * 3);
		  }
		  
	}
}

function escreverLegenda(letra, nomeCompleto, nomeOriginal, pos){
	
	nomeCompleto = nomeCompleto.replace("_"," ");
	var leg = "";
	if(pos == -1)
		return nomeOriginal + (avda.raiz ? " - " + nomeCompleto : "");
	else
		for(i = 0; i < nomeCompleto.length; i++){
			
			if(i != pos)
				leg +=  nomeCompleto.charAt(i);
			else
				leg += "<span class=\"avda_subsel\">"+letra+"</span>";
		}
	
	return leg;
}

function recuperarObjetoSwf(nome, pai, id){
	
	var vid = $(document.createElement("div"));
	vid.attr("id", id);
	pai.append(vid);
	
    var att;
    if(nome != '?' /*&& nome != 'barraS'*/) {
    	att = { data:avda.url+avda.banco + nome +"Sm_Prog001.swf", width:avda.dW, height: avda.dH}; 
		//++contagemAtt;
		//alert('att : ' + att + contagemAtt);
	}
    else if(nome == '?')
    	att = { data:avda.url+avda.banco + 'cedil' +"Sm_Prog001.swf", width:avda.dW, height: avda.dH};
    /*else if(nome == 'barraS'){
	att = { data:avda.url+avda.banco + nome +"Sm_Prog001.swf", width:1, height: avda.dH}; // por isso carregou a barra como um filhetinho
        
    }*/
    
    //var par = { wmode:"transparent", loop:"false", scale:"noborder"};
	var par = { wmode:"direct", loop:"false", scale:"noborder"};
	//alert('myObject : ' + myObject);
    var myObject = swfobject.createSWF(att, par, id); 
	return myObject;
}

//Auxiliares de Texto

function recuperarSelecionado()
{
    var txt = '';
     if (window.getSelection)
    {
        txt = window.getSelection();
		
             }
    else if (document.getSelection)
    {
        txt = document.getSelection();
            }
    else if (document.selection)
    {
        txt = document.selection.createRange().text;
            }
    else return "";
	
	return txt;
}

function compararOrdem(_a, _b){
	
	return _a.pos - _b.pos;
}

//Auxiliar de Movimento
function mover_horizontal(){

	var avda = $("#avda"); 
	if(avda[0].style.left == '0px'){
		avda[0].style.left = '';
		avda.animate({ right: '0px'}, 'slow');		
	}
	else{
		avda.animate({ left: '0px' }, 'slow');
		avda[0].style.right = '';
	}
		
}

function logar(msg){
	
	if(avda.debug)
		avda.debox.html(avda.debox.html() + "<br />" + msg);
	
}

function AVD_voz(){
		
	
	if(avda.voz = 	!avda.voz)
		$("#avda_voz_ico").attr("src", avda.url + "img/voz" + avda.tipoext + "");
	else
		$("#avda_voz_ico").attr("src", avda.url + "img/voz_off" + avda.tipoext + "");
		
		
	AVD_controles();
}

function AVD_controles(){
	
	
	//$("#avda_img_less").toggle();
	//$("#avda_img_more").toggle();
	
}

function pausecomp(millis) 
{
	var date = new Date();
	var curDate = null;
	
	do { curDate = new Date(); } 
	while(curDate-date < millis);
} 



function clicaLogo(obj){
	if (avda.applet){
			//$("#avda_resultado").hide();
			document.getElementById('avda').style.display='';	
	}
	else{
		constroiIframe();
		//alert('constroiIframe()' + constroiIframe());
		if(!obj)
			return;
		avda.logo = obj.src;
		//alert('avda.logo' + avda.logo);
		obj.src=avda.url + 'img/loadinfo.gif';
		
	}
}


function voltaLogo(){
	//alert('entrou' + document.getElementById('sonetoLogo').value)
	if(document.getElementById('sonetoLogo'))
		//alert('avda.logo' + avda.logo);
		document.getElementById('sonetoLogo').src = avda.logo ;	
	document.getElementById('avda').style.display='';
}

function verificarPadroesStr(msg){
	
	var dig = '';
	var indexS = -1;
	var indexE = -1;
	var msg_;
	for(var i = 0; i <= msg.length; i++){
		
		var c = i < msg.length ? msg.charAt(i) : "";
		if((c >= '0' && c <= '9') || ((c == '/' || c == ':' || c == ',' || c == '.' || c == '-') && indexS != -1)){
			
			if(indexS == -1)
				indexS = i;
				
		}else{
			if(indexS != -1){
				indexE = i;
				substr = msg.substring(indexS, indexE);
				substr_ = formatarTipoStr(substr, msg.indexOf(" R$") != -1);
				i += substr_.length - substr.length;
				msg = msg.replace(substr, substr_);
				indexS = -1;
				indexE = -1;
				
			}			
		}
	}
	
	return msg;
}

function formatarTipoStr(str, cifrao){

	if(!padraoDataHora(str) && !padraoDinheiro(str) && !padraoAno(str))
		return quebrarStr(str);
	else
	    if(padraoDinheiro(str) && !cifrao)
		return "R$" + str;
	    else 
		return str;
}

function padraoDinheiro(str){
	
	return (str.indexOf(",") != -1 && str.indexOf("/") == -1 && str.indexOf("-") == -1 && str.indexOf(":") == -1);
	
}

function padraoAno(str){
	
	return (str.length == 4 || str.length == 2) && str.indexOf(".") == -1 && str.indexOf(",") == -1 && str.indexOf("/") == -1 && str.indexOf("-") == -1 && str.indexOf(":") == -1;
}

function padraoCpf(cpf){
	
	exp = /\.|\-/g;
	cpf = cpf.replace(exp, "");
	var digitoDigitado = eval(cpf.charAt(9) + cpf.charAt(10));
	var soma1 = 0, soma2 = 0;
	var vlr = 11;
	for(i = 0; i < 9; i++){
		
		soma1 += eval(cpf.charAt(i) * (vlr - 1));
		soma2 += eval(cpf.charAt(i) * (vlr));
		vlr--;
	}
	
	soma1 = (((soma1*10)%11)== 10 ? 0 : ((soma1*10)%11));
	soma2 = (((soma2+(2*soma1))*10)%11);
	
	var digitoGerado = (soma1*10) + soma2;
	return digitoGerado == digitoDigitado;
}

function padraoConta(str){
	
	return str.indexOf("-") != -1 &&  str.indexOf(",") == -1;

}

function padraoDataHora(str){
	
	
	return (str.indexOf(":") != -1 && str.indexOf(",") == -1 && str.indexOf(".") == -1 && str.indexOf("/") == -1 && str.indexOf("-") == -1)
			||
			(str.indexOf("/") != -1 && str.indexOf(",") == -1 && str.indexOf(".") == -1 && str.indexOf(":") == -1 && str.indexOf("-") == -1);
}

function quebrarStr(str){
	
	str_ = "";
	for(var i = 0; i < str.length; i++){
		
		sub = str.charAt(i) != '3' ? " , " : " ";
		str_ = str_ + str.charAt(i) + (i < str.length - 1 ? sub : "");
	}
	return str_;
}
