//************************************* 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)
{

	// 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) 
			document.getElementById(div).innerHTML = "<br><br><br><center><img src='gif/carregando.gif' border='0' /><br><h4>Carregando...</h4></center><br><br><br><br><br><br><br><br><br>";
		
		// 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")
		
		}
	
	}

}