//************************************* FUNÇÕES PRINCIPAIS ******************************************
// função para iniciarmos o Ajax no browser do cliente.
function criaAJAX() 
{

	var ajax;
	
	try
	{
		
		//tenta criar ajax
		ajax = new XMLHttpRequest();
		
	}
	catch(e){
		
		var XMLHttpVersoes = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"];	

		//procura a melhor versao pra IE
		for(var i = 0; i < XMLHttpVersoes.length; i++)
		{
			

			try
			{
			
				//tenta criar objeto XMLHttpRequest
				ajax = new ActiveXObject(XMLHttpVersoes[i]);
			
			}
			catch(e) {}
			
		}
		
	}
	
	//retorna o objeto criado ou um erro
	if(!ajax)
		alert("Erro ao tentar criar o objeto XMLHttpRequest.");
	 else 
		return ajax;
	
	//caso chegue ate aqui
	return false
	
}

//extrai o script de um responseText
function extraiScript(texto)
{

	// inicializa o inicio 
    var ini = 0;
	
    // loop enquanto achar um script
    while (ini!=-1)
	{
		
        // procura uma tag de script
        ini = texto.indexOf('<script', ini);
		
        // se encontrar
        if (ini >=0)
		{
			
            // define o inicio para depois do fechamento dessa tag
            ini = texto.indexOf('>', ini) + 1;
			
            // procura o final do script
            var fim = texto.indexOf('</script>', ini);
			
            // extrai apenas o script
            codigo = texto.substring(ini,fim);
			
			//cria o script
            novo = document.createElement("script")
            novo.text = codigo;
            document.body.appendChild(novo);

            // executa o script
            // eval(codigo);

        }
		
    }
	
}

//funcao que abre conteudo ajax em uma div
function abre(div, url, tipo_load)
{

	// inicia o ajax
	var ajax = criaAJAX(); 
	
	//aponta arquivo
	ajax.open("GET", url, true); 
	
	//executa acao conforme carregamento
	ajax.onreadystatechange = mostraResultado;
	
	//submete dados ao servidor
	ajax.send(null); 
	
	
	//funcao executada ao terminar de caregar o ajax
	function mostraResultado() {
	
		// Quando estiver carregando, exibe: carregando...
		
		
		if(ajax.readyState == 1) {
			if (tipo_load == 2)
			   document.getElementById(div).innerHTML = "<div id='loading' align='center'><table style='background-color:#FFFFFF;' cellspacing='0' cellpadding='0' align='center' border='0' style='width:115px;'><tr><td align='center'><img src='imagens/loading3.gif'></td><td align='left'><font faze='tahoma' size='1'><strong>Carregando...</strong></font></td></tr></table></div>";
			   else
			   document.getElementById(div).innerHTML = "<div align='center'><table cellspacing='0' cellpadding='0' align='center' border='0' style='width:115px;'><tr><td align='center'><img src='imagens/loading4.gif'></td><td align='left'><font faze='tahoma' size='1'><strong>Carregando...</strong></font></td></tr></table></div>";
			}
		
		// Quando estiver tudo pronto.
		if(ajax.readyState == 4) { 
	
			if(ajax.status == 200) {

				var resultado = ajax.responseText;
								
				extraiScript(resultado);
				
				//mostra resulado
				
				document.getElementById(div).innerHTML = resultado;
				
			} else alert("erro")
		
		}
	
	}

}
