function gE(tI) { // Esta funcao paga o elemento pelo ID
  if (document.getElementById) { return document.getElementById(tI); }
  else if (document.all) { return document.all[tI]; } else return false;
}

// Script para consultar Dados via Ajax -----------------INICIO
// Adaptado do script de BuscaInstantânea de Leandro Vieira Pinho, colunista iMasters (Dreamweaver)

// Funçao para iniciarmos o Ajax no browser do cliente.
function openAjax() {

		var ajax;
		
		try{
			ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers decentes, como: Firefox, Safari, dentre outros.
		}catch(ee){
			try{
				ajax = new ActiveXObject("Msxml2.XMLHTTP"); // Para o IE da MS
			}catch(e){
				try{
					ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS
				}catch(E){
					ajax = false;
				}
			}
		}
		return ajax;
}

var actionGlobal; //acao atual da consulta
var idExibe; //elemento que receberá o renorno da consulta
var secaoAtual; //define a secao atual das perguntas

// Funçao que realiza a consulta dos Dados
function consDados(codigo,tipo) {
	secaoAtual0 = secaoAtual;
	if (tipo == 0) { //0 = Consulta de Seções
		actionGlobal = "consultarsecoes";
		url = "action.asp?action=" + actionGlobal;
		idExibe = 'tdSecoes';
	} else if (tipo == 1) { //1 = Consulta de Perguntas
		actionGlobal = "consultarrespostas";
		url = "action.asp?action=" + actionGlobal + "&codSecao=" + codigo;
		idExibe = 'tdPerguntas';
		secaoAtual = codigo;
	} else if (tipo == 2) { //2 = Consulta de Respostas
		actionGlobal = "consultarrespostas";
		url = "action.asp?action=" + actionGlobal + "&codPerguntas=" + codigo;
		idExibe = 'spResp' + codigo;
	}

		/* 
		Verifica se o elemento está visível.
		Se nao estiver, faz a consulta.
		*/
		if (gE(idExibe).style.display != "inline" || secaoAtual != secaoAtual0) {
			gE(idExibe).style.display = "inline";
			execAJAX(url); //Executa a consulta via AJAX
		} else {
			gE(idExibe).style.display = "none";
			gE(idExibe).innerHTML = "";
		}
	
}

function execAJAX(url) {
			var ajax = openAjax(); // Inicia o Ajax.
			ajax.open("GET", url, true); // Envia a página que realizará a consulta propriamente dita
			ajax.onreadystatechange = function() {
				if(ajax.readyState == 1) { // Quando estiver carregando, exibe uma camada: Carregando...
					gE('Layer1').style.visibility = "visible";
				}
				if(ajax.readyState == 4) { // Quando estiver tudo pronto.
					if(ajax.status == 200) {
						var resultado = ajax.responseText; // Coloca o resultado (da busca) retornado pelo Ajax nessa variável (var resultado).
						resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos (saiba mais aqui: http://www.plugsites.net/leandro/?p=4)
						resultado = unescape(resultado); // Resolve o problema dos acentos
						gE('Layer1').style.visibility = "hidden"; //Oculta o "Carregando..."
						retornaAJAX(resultado); // Manda o resultado para uma função de retorno.
					} else {
						alert("Ocorreu um erro no AJAX ("+ ajax.statusText + ")"); //Caso ocorram erros, exibe um aviso.
					}
				}
			} 
			ajax.send(null); // submete
}	
// Script para consultar Dados via Ajax -----------------FIM


//Funcao de retorno da consulta que, de acordo com a ação Global, terá um comportamento
function retornaAJAX(result){
	var exibe = "";
	action = actionGlobal; //recebe  a acao global
		//prepara o resultado e mescla com as tags HTML de visualização	
	if (action == "consultarsecoes"){

		var result1 = result.split("||"); /*recebe o retorno como uma string 
										e faz a quebra por ""||" para definir os registros */
		
		for ( var i = 0; result1[i]; i++ ) {
		
			var result2 = result1[i].split(";;"); //quebra por ";;" para definir os valores dos campos
			
			//impressao das secoes
			exibe = exibe + "<div class=\"link_menuCat02\" id=\"sp"+result2[1].replace(" ","_")+"\" " + 
					" style=\"cursor:pointer;\" " +						
					" ><a href=\"javascript: void(0)\" onclick=\"consDados('"+ result2[0] +"',2)\" title='"+ result2[2] +"' class=\"link_menuCat01\">" + result2[1] + "</a>" +
					//impresao das sub categorias
					" </div><b><span class=\"link_menuCat02\" id=\"spResp"+ result2[0] +"\"></b></span>"


			//exibe = exibe + "<span id=\"sp"+result2[1].replace(" ","_")+"\" " + 
			//		" style=\"cursor:pointer;\" class=\"spSec\"" +
			//		" onclick=\"consDados('"+ result2[0] +"',1)\">" + result2[1] + "</span> <br> "
					

		}

		exibe = exibe.substring(0,exibe.length-2); //Retira o "| " que vem junto com o último registro

	} else if (action == "consultarperguntas") {
		var result1 = result.split("||");
		for ( var i = 0; i < (result1.length -1); i++ ) {
		
			var result2 = result1[i].split(";;");
			exibe = exibe + "<div class=\"link_menuCat01\" id=\"sp"+result2[1].replace(" ","_")+"\" " + 
					" style=\"cursor:pointer;\" " +
					" onclick=\"consDados('"+ result2[0] +"',2)\">" + result2[1] + 
					" </div> <span class=\"link_menuCat01\" id=\"spResp"+ result2[0] +"\">  </span><br>"

		}

	} else if (action == "consultarrespostas") {
		var result1 = result.split("||");
		for ( var i = 0; i < (result1.length -1); i++ ) {
		
			var result2 = result1[i].split(";;");
			exibe = exibe + "<div class=\"dvPerg\" id=\"sp"+result2[1].replace(" ","_")+"\" " + 
					" style=\"cursor:pointer;\" " +
					"<span class=\"dvResp\"> &nbsp;&nbsp;&gt;&nbsp;</span><a href=http://www.emporiomercantil.com.br/listacat.asp?sub="+ result2[0] +"&cat="+ result2[2] +"\ class=\"link_menuCat01\">" + result2[1] +"<\a>"
					//" onclick=\"consDados('"+ result2[0] +"',2)\">&nbsp;&nbsp;&gt;" + result2[1] + 
					" </div> <span class=\"dvResp\" id=\"spResp"+ result2[0] +"\"></span>"

		}


	}
//recebe o que deve ser exibido e insere o resultado final no elemento dito pela variável idExibe
gE(idExibe).innerHTML = exibe;
	
}
