function openAjax() {
	var ajax;
	try {
		ajax = new XMLHttpRequest();
	} catch(ee) {
		try {
			ajax = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				ajax = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(E) {
				ajax = false;
			}
		}
	}
	return ajax;
}

window.onload = loadFunctions;

function loadFunctions() {
	focusNome();
}

function gE(ID) {
	return document.getElementById(ID);
}


function gEs(tag) {
	return document.getElementsByTagName(tag);
}

function ativarNavegacao() {
	// Seleciona todas as tags a, os links.
	var linksBtn = gEs('a');
	// Faz um loop por todos (links)
	for (var x = 0; x < linksBtn.length; x++) {
		// Cada link em si
		var linkBtn = linksBtn[x];
		// Cria uma vairável - atributoRel - com o valor do atributo rel do link
		var atributoRel = new String(linkBtn.getAttribute('rel'));
		// Verifico se o link será para edição dos dados
		if (atributoRel.substring(0,12) == 'btnCarregaPg') {
			linkBtn.onclick = function() {
				// Pego o ID do registro, que coloquei no atributo rel
				// Se fazer sem a palavra-chave this, o script sempre pegará o último da lista
				// O this neste caso é IMPORTANTISSÍMO
				var ID = this.getAttribute('rel').split('-')[1];
				//var TT = this.getAttribute('rel').split('-')[2];
				var url="mudaPagina.php?pgS="+ID;
				
				//alert(TT);
				
				//var titulo=gE('tituloMeio');
				
				//titulo.innerHTML=TT;
				
				// Inicia o Ajax, através da variável Ajax
				var ajax = openAjax();
				// A tag bgBody conterá o formulário de cadastro
				var recipiente = gE('conteudo');
				// Informamos o método e a página que será requisitada
				ajax.open('GET', "mudaPagina.php?pgS="+ID , true); 
				// bla
				ajax.onreadystatechange = function() {
					if (ajax.readyState == 1) {
			recipiente.innerHTML="<br><br><br><br><br><br><br><br><div align='center'><img src='images/loading.gif'><br>carregando...</center>";
					} // if->readyState->1
					if (ajax.readyState == 4) {
						if (ajax.status == 200) {
							// Remove o efeito de loading
							texto=unescape(ajax.responseText.replace(/\+/g," "));
							recipiente.innerHTML = ajax.responseText;
							focusNome();
							loadFunctions();
							extraiScript(texto);
						} // if-status->200
					} // if->readyState->4
				} // ajax->onreadystatechange
		ajax.send(null);
		return false;
			} // linkBtn.onclick
		} 

	}
}


// Esta função seta o focus ao campo nome do formulário
function focusNome() {
	// Se hão houver o campo nome aborta a função
	if (!gE('nome')) return false;
	// Concede o focus ao campo nome do cadastro
	gE('nome').focus();
}

function focusNumero() {
	// Se hão houver o campo nome aborta a função
	if (!gE('numero')) return false;
	// Concede o focus ao campo nome do cadastro
	gE('numero').focus();
}



//função CEP
function getEndereco() {
			// Se o campo CEP não estiver vazio
			if($.trim($("#cep").val()) != ""){
				$("#endereco").val("Carregando");
				$("#bairro").val("Carregando");
				$("#cidade").val("Carregando");
				$("#estado").val("Carregando");
				
				/* 
					Para conectar no serviço e executar o json, precisamos usar a função
					getScript do jQuery, o getScript e o dataType:"jsonp" conseguem fazer o cross-domain, os outros
					dataTypes não possibilitam esta interação entre domínios diferentes
					Estou chamando a url do serviço passando o parâmetro "formato=javascript" e o CEP digitado no formulário
					http://cep.republicavirtual.com.br/web_cep.php?formato=javascript&cep="+$("#cep").val()
				*/
				$.getScript("http://cep.republicavirtual.com.br/web_cep.php?formato=javascript&cep="+$("#cep").val(), function(){
					// o getScript dá um eval no script, então é só ler!
					//Se o resultado for igual a 1
			  		if(resultadoCEP["resultado"]){
						// troca o valor dos elementos
						$("#endereco").val(unescape(resultadoCEP["tipo_logradouro"])+": "+unescape(resultadoCEP["logradouro"]));
						$("#bairro").val(unescape(resultadoCEP["bairro"]));
						$("#cidade").val(unescape(resultadoCEP["cidade"]));
						$("#estado").val(unescape(resultadoCEP["uf"]));
						focusNumero();
					}else{
						alert("Endereço não encontrado");
					}
				});				
			}			
	}



function extraiScript(texto){
//Maravilhosa função feita pelo SkyWalker.TO do imasters/forum
//http://forum.imasters.com.br/index.php?showtopic=165277
        // 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);
						//eval(codigo);
                        /**********************
                        
                        * Alterado por Micox - micoxjcg@yahoo.com.br
                        * Alterei pois com o eval não executava funções.
                        
                        * Alterado por Everton D. Silva - everton.silva@streamingshop.com.br
                        * não estava retornando o valor
                        ***********************/
        var novo = document.createElement('script');
        novo.type = 'text/javascript';
        novo.language   = 'javascript';
        novo.text = codigo;
        document.body.appendChild(novo);
                }
        }
}


