function carrega_arquivo(arquivo){
	/* 
		Esta função recebe o endereço do arquivo e o carrega para o programa;
	*/
	if(window.XMLHttpRequest) { 
	
        /* 
			Carrega o arquivo com request sincrono;
		*/
		
		var ler = new XMLHttpRequest();
        ler.open("GET", arquivo ,false);
        ler.send(null);
        return ler.responseXML;
		
    } else if (window.ActiveXObject) { 
	
        /* 
			Para que funcione no IE Com ActiveX;
		*/
		
        var ler = new ActiveXObject("Msxml2.DOMDocument.3.0");
        ler.async = false;
        ler.load(arquivo);
        return ler;
		
    }
}

function monta_blocos(arquivo_xml,destino){
	/* 
		Esta função recebe o o conteudo do arquivo XML e processa, colocando o resultado no destino informado;
	*/	
	/*
		Navegacao pelos nós do XML;		
	*/
	for(var i=0;i<arquivo_xml.childNodes.length;i++){
		/*
			Verifica espaços em branco;
		*/
		if(arquivo_xml.childNodes[i].nodeType == 1){
			/*
				Verifica se o nó possui filhos;
			*/
			if(arquivo_xml.childNodes[i].childNodes.length>0){
					/*
						Quando encontra o nó determinado, trata seu conteudo;
					*/
					if (arquivo_xml.childNodes[i].nodeName == 'id') {
						
						var banner = document.createElement("a");
						banner.setAttribute("id","banner_"+arquivo_xml.childNodes[i].firstChild.nodeValue);
						banner.setAttribute("onclick","this.target=''");
						var max_id = arquivo_xml.childNodes[i].firstChild.nodeValue;
						document.max_id = max_id;
						document.atual_id = 0;
						//banner.setAttribute("class","item");
						
					}
					/*
						Quando encontra o nó determinado, trata seu conteudo;
					*/					
					if (arquivo_xml.childNodes[i].nodeName == 'alt') {
						
						var imagem = document.createElement("img");
						imagem.setAttribute("alt",arquivo_xml.childNodes[i].firstChild.nodeValue);
						//var name_t = document.createTextNode(arquivo_xml.childNodes[i].firstChild.nodeValue);
						//name.appendChild(name_t);
						//banner.appendChild(imagem);
						
					}					
					/*
						Quando encontra o nó determinado, trata seu conteudo;
					*/					
					if (arquivo_xml.childNodes[i].nodeName == 'src') {
						
						//var foto = document.createElement("div");
						//foto.setAttribute("class","foto");
						//var imagem = document.createElement("img");
						imagem.setAttribute("src",arquivo_xml.childNodes[i].firstChild.nodeValue);
						//foto.appendChild(imagem);
						
					}
					/*
						Quando encontra o nó determinado, trata seu conteudo;
					*/					
					if (arquivo_xml.childNodes[i].nodeName == 'url') {
						
						banner.setAttribute("href",arquivo_xml.childNodes[i].firstChild.nodeValue);
						//var detalhes = document.createElement("div");
						//detalhes.setAttribute("class","detalhes");
						//var bio = document.createElement("p");
						//var bio_t = document.createTextNode(arquivo_xml.childNodes[i].firstChild.nodeValue);
						//bio.appendChild(bio_t);
						
					}
					/*
						Quando encontra o nó determinado, trata seu conteudo;
					*/					
					if (arquivo_xml.childNodes[i].nodeName == 'tempo') {
						
						//var url = document.createElement("a");
						//url.setAttribute("href",arquivo_xml.childNodes[i].firstChild.nodeValue);
						//var url_t = document.createTextNode(arquivo_xml.childNodes[i].firstChild.nodeValue);
						//url.appendChild(url_t);
						/*
							Aqui é detectado o final do bloco de dados, construido o resultado e adicionado ao destino;
						*/
						//detalhes.appendChild(name);
						//detalhes.appendChild(bio);
						//detalhes.appendChild(url);
						//banner.appendChild(foto);
						//banner.appendChild(detalhes);
						banner.setAttribute("target",arquivo_xml.childNodes[i].firstChild.nodeValue);
						banner.appendChild(imagem);
						destino.appendChild(banner);
						
					}					
					/*
						Este comando provoca a repeticao da funcao com o conteudo do nó filho indicado;
					*/
					monta_blocos(arquivo_xml.childNodes[i],destino);
					//alert(document.getElementById("banners").innerHTML);
			
			} 
			
		}
		
	}

	//alert(document.max_id);
	
}

function roda_banners() {

	/// ESCONDE OS BANNERS
	for (var b = 1; b <= document.max_id; b++) {
		document.getElementById("banner_"+b).style.display = 'none';
	}

	/// VERIFICA POSICAO
	if (document.atual_id >= document.max_id || document.atual_id == 0) {
		document.atual_id = 1;
	} else {
		document.atual_id++;		
	}
	
	/// MOSTRA O BANNER
	var banner_atual = document.getElementById("banner_"+document.atual_id);
	banner_atual.style.display = '';
	
	/// REINICIA PROCESSO
	//alert(banner_atual.name);
	var tempo_atual = banner_atual.target + '000';
	//alert(tempo_atual);
	setTimeout("roda_banners()",parseInt(tempo_atual));
	//alert(tempo_atual);
	
}

function carrega_banners() {
	/* 
		Capturando o objeto conteudo, onde vai ser colocado o resultado fa funcao;
	*/
	obj_destino	= document.getElementById("banners");	
	/* 
		Carrega o arquivo XML na variavel xml;
	*/	
	xml = carrega_arquivo("home/banners.xml");
	/* 
		Executa a função de tratamento, informando o conteudo do XML e o destino do resultado;
	*/	
	monta_blocos(xml,obj_destino);
	/* 
		Faz com que o IE recarregue o conteudo para exibir corretamente;
	*/
	obj_destino.innerHTML = obj_destino.innerHTML;
	
	roda_banners();
	
}