﻿// JavaScript Document

function ajaxInit(){
	try {
		xmlhttp = new XMLHttpRequest();
	} catch(ee) {
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(E) {
				alert('Este navegador não dá suporte a Ajax.');
				xmlhttp = false;
			}
		}
	}
	return xmlhttp;
}
function carrega(url, divnome){

	//Exibe o texto carregando no div conteúdo
    var conteudo=document.getElementById(divnome);
    conteudo.innerHTML='<div id="mensagem_form" align="center"><br /><br /><br /><br /><br /><img src="imagens/carregando4.gif"><br /><br /><br /><br /><br /><br /><br /><br /><br /></div>';
	
	//Abre a url
    xmlhttp = ajaxInit();
	
	if (xmlhttp){
		xmlhttp.open("GET", url,true);
		xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	    xmlhttp.onreadystatechange=function(){
        	if (xmlhttp.readyState==4){
            	if(xmlhttp.status==200){ 
		            var texto=xmlhttp.responseText;
					texto=texto.replace(/\+/g," ");
		            texto=unescape(texto);
		            conteudo.innerHTML=texto;
					ExtraiScript(texto);
					//alert(texto);
				}else{
					alert(xmlhttp.statusText);
				}
			}
		}
        xmlhttp.send(null);
	}
}
//função que extrai o script
function ExtraiScript(texto){
	//alert('aqui');
    var ini, pos_src, fim, codigo;
    var objScript = null;
    ini = texto.indexOf('<script', 0);
    while (ini!=-1){
        var objScript = document.createElement("script");
        //Busca se tem algum src a partir do inicio do script
        pos_src = texto.indexOf(' src', ini)
        ini = texto.indexOf('>', ini) + 1;

        //Verifica se este e um bloco de script ou include para um arquivo de scripts
        if (pos_src < ini && pos_src >=0){//Se encontrou um "src" dentro da tag script, esta e um include de um arquivo script
            //Marca como sendo o inicio do nome do arquivo para depois do src
            ini = pos_src + 4;
            //Procura pelo ponto do nome da extencao do arquivo e marca para depois dele
            fim = texto.indexOf('.', ini)+4;
            //Pega o nome do arquivo
            codigo = texto.substring(ini,fim);
            //Elimina do nome do arquivo os caracteres que possam ter sido pegos por engano
            codigo = codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");
            // Adiciona o arquivo de script ao objeto que sera adicionado ao documento
            objScript.src = codigo;
        }else{//Se nao encontrou um "src" dentro da tag script, esta e um bloco de codigo script
            // Procura o final do script
            fim = texto.indexOf('</script>', ini);
            // Extrai apenas o script
            codigo = texto.substring(ini,fim);
            // Adiciona o bloco de script ao objeto que sera adicionado ao documento
            objScript.text = codigo;
        }

        //Adiciona o script ao documento
        document.body.appendChild(objScript);
        // Procura a proxima tag de <script
        ini = texto.indexOf('<script', fim);

        //Limpa o objeto de script
        objScript = null;
    }
}