// JavaScript Document
function xmlMicoxLoader(url){
  //by Micox: micoxjcg@yahoo.com.br.
    if(window.XMLHttpRequest){
        var Loader = new XMLHttpRequest();
        Loader.open("GET", url ,false);
        Loader.send(null);
        return Loader.responseXML;
    }else if(window.ActiveXObject){
        var Loader = new ActiveXObject("Msxml2.DOMDocument.3.0");
        Loader.async = false;
        Loader.load(url);
        return Loader;
    }
}
function xmlMicoxArvore(xmlNode, identacao)
{
	//by Micox: micoxjcg@yahoo.com.br
	var arvoreTxt = "";//esta var armazenara o conteudo
	var br = "";
	for (var i = 0; i < xmlNode.childNodes.length; i++)
	{//percorrendo os filhos do nó
		if (xmlNode.childNodes[i].nodeType == 1)
		{//ignorar espaços em branco
			//pegando o nome do nó
			if(xmlNode.childNodes[i].nodeName == "Show")
			{
				br = "<br>"
			}
			arvoreTxt = arvoreTxt + identacao + "<font id='bold'>"+br+xmlNode.childNodes[i].nodeName + ": </font>";
			if (xmlNode.childNodes[i].childNodes.length == 0)
			{
				//se não tiver filhos eu já pego o nodevalue
				arvoreTxt = arvoreTxt + xmlNode.childNodes[i].nodeValue;
				for (var z = 0; z < xmlNode.childNodes[i].attributes.length; z++)
				{
					var atrib = xmlNode.childNodes[i].attributes[z];
					arvoreTxt = arvoreTxt + " "  + atrib.nodeValue;
				}
				arvoreTxt = arvoreTxt + "<br />\n";
			}
			else if (xmlNode.childNodes[i].childNodes.length > 0)
			{
				//se tiver filhos eu tenho que pegar o valor pegando o valor do primeiro filho
				if(xmlNode.childNodes[i].firstChild.nodeValue != null)
				{
					arvoreTxt = arvoreTxt + xmlNode.childNodes[i].firstChild.nodeValue;
				}
				for (var z = 0; z < xmlNode.childNodes[i].attributes.length; z++)
				{
					var atrib = xmlNode.childNodes[i].attributes[z];
					arvoreTxt = arvoreTxt + " " + atrib.nodeValue+"<br>";
				}
				//recursividade para carregas os filhos dos filhos
				arvoreTxt = arvoreTxt + "<br />\n" + xmlMicoxArvore(xmlNode.childNodes[i], identacao + "&nbsp;&nbsp;");
			}
		}
	}
	return arvoreTxt;
}
