var idCategoria;

function criaAguardeCategorias(){

	var divAguarde = document.createElement('div');
	divAguarde.setAttribute('id','divAguarde');
	
	document.body.appendChild(divAguarde);
	divAguarde.style.position = 'absolute';
}

function listarCategorias(valor, form, tipo){
	idCategoria = form;
	
	aguardeCategorias(1);

	var url= "ajax/categorias/categorias.php?x=" + encodeURIComponent(valor)+"&tipo=" + encodeURIComponent(tipo);
	// Envia dados
	requisicaoHTTP("GET",url,true,2);
	
}

// trata a resposta do servidor
function trataDadosCategorias(){
	var meuXML = ajax.responseXML;  // obtém a resposta como XML
	var raiz = meuXML.documentElement;

	limpaCategorias();
	criaOpcoesCategorias(raiz);
	aguardeCategorias(2);

}

function criaOpcoesCategorias(raiz){
	var saida = document.getElementById(idCategoria);
	var op = null;

	op = document.createElement("option");
	op.appendChild(document.createTextNode(""));
	saida.appendChild(op);

	var nodos;
	if(raiz.hasChildNodes()) {
		nodos = raiz.childNodes;
		for(var i=0; i<nodos.length ; i++) {
			if(nodos[i].hasChildNodes()) {
				op = document.createElement("option");
				op.setAttribute("value",nodos[i].nodeName.replace("id",""));
				op.appendChild(document.createTextNode(nodos[i].firstChild.nodeValue));
				saida.appendChild(op);
			} else {
			}
		}
	}
}

function aguardeCategorias(acao) {
	var camadaAguarde =  document.getElementById('divAguarde');
	var camadaCategoria  =  document.getElementById(idCategoria);

	if (acao == 1){
		var esq = calcularDivAguardeCategorias(camadaCategoria,'offsetLeft') + 4;
		var cima = calcularDivAguardeCategorias(camadaCategoria,'offsetTop') + 3;
	
		camadaAguarde.style.left = esq + 'px';
		camadaAguarde.style.top = cima + 'px';
		
		camadaAguarde.innerHTML = "<font style='font-family: Tahoma, Arial, Arial, Helvetica, sans-serif; font-size: 11px;'>Carregando!!!!</font>";

		camadaCategoria.disabled = "disabled";
	} else {
		var camadaAguarde =  document.getElementById('divAguarde');
		
		camadaAguarde.innerHTML = "";
		camadaCategoria.disabled = "";
	}
}

function calcularDivAguardeCategorias(campo, atributo) {
	var posicao = 0;
	while(campo) {
		posicao += campo[atributo];
		campo = campo.offsetParent;
	}
	return posicao;
}
function limpaCategorias(){
	var elemento = document.getElementById(idCategoria);
	while (elemento.childNodes.length > 0){
		if(elemento != null && elemento.hasChildNodes()){
			for(var i=0; i<elemento.childNodes.length; i++){
				elemento.removeChild(elemento.firstChild);
			}
		}
		var elemento = document.getElementById(idCategoria);
	}
}
