var req=null;
var tabela=null;

function loadXMLDoc(url) {
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Msxml2.XMLHTTP");
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if (req) {
		req.onreadystatechange = processReqChange;
		req.open("GET", url, true);
		req.send(null);
	}
}

function processReqChange() {
	var ready=req.readyState;
	var data=null;
	if (ready==4){
		data=req.responseXML;
		encheCombo();
		encheTabela("Anatomia Patológica");
	}
}

function encheCombo(){
	combo = document.getElementById('combo');
	combo.removeChild(combo.firstChild);
	combo.removeChild(combo.firstChild);
	var xmlDoc = this.req.responseXML;
	for (i=0;i<1000;i++) {
		especialidade = xmlDoc.getElementsByTagName("especialidade")[i];
		if (especialidade && especialidade.attributes.getNamedItem("flutuante").value == "false"){
			tipo = especialidade.attributes.getNamedItem("tipo").value;
			var newoption=document.createElement("option"); //cria opção da combo
			combo.appendChild(newoption); // insere opção da combo no 'select'
//			var newoption.valueName = tipo; // atribui valor à opção (funciona só no FireFox)
			var txt=document.createTextNode(tipo); // cria texto
			newoption.appendChild(txt); // insere texto
		}
		else {
			break;
		}
	}
}

function apagaTabela(){
	while(tabela.firstChild) {
		tabela.removeChild(tabela.firstChild);
	}
	document.getElementById('coordenador').style.display = "none";
}

function encheTabela(esp){
	apagaTabela();
	sIFR.rollback(); // desfaz os textos em flash
	document.getElementById('titEspecialidade').innerHTML = ""; // apaga especialidade
	doit(); // refaz os textos em flash
	var xmlDoc = this.req.responseXML;
	for (i=0;i<1000;i++) {
		especialidade = xmlDoc.getElementsByTagName("especialidade")[i];
		if (especialidade && especialidade.attributes.getNamedItem("flutuante").value == "false"){
			tipo = especialidade.attributes.getNamedItem("tipo").value;
			if(tipo == esp) {
				sIFR.rollback(); // desfaz os textos em flash
				document.getElementById('titEspecialidade').innerHTML = tipo; // troca especialidade
				doit(); // refaz os textos em flash
				// INICIO - Escreve nomes e CRMs
				for (j=0;j<1000;j++) {
					if (especialidade.getElementsByTagName("medico")[j]) {
						medico = especialidade.getElementsByTagName("medico")[j].attributes;
					}
					else break;
					if (medico.getNamedItem("cargo").value.toLowerCase() == "coordenador" || medico.getNamedItem("cargo").value.toLowerCase() == "coordenadora") { // Insere Coordenador
						nome = medico.getNamedItem("nome").value;
						crm = medico.getNamedItem("crm").value;
						desc = medico.getNamedItem("desc").value;
						//foto = medico.getNamedItem("foto").value;
						if (medico.getNamedItem("cargo").value.toLowerCase() == "coordenador") {
							s = "";
						}
						else {
							s = "a";
						}
						insereCoordenador(nome,crm,desc,s); //,foto
					}
					//else { // Insere Médico
					//	nome = medico.getNamedItem("nome").value;
					//	crm = medico.getNamedItem("crm").value;
					//	insereDados(nome,crm);
					//}
				}
				// FIM - Escreve nomes e CRMs
			}
		}
		else break;
	}
}

function insereDados(nome,crm){
	if (tabela!=null){
		var newline=document.createElement("tr"); //cria nodo TR
		tabela.appendChild(newline); // insere nodo TR em 'tabela'
		
		var newcolum=document.createElement("td"); //cria nodo TD
		newline.appendChild(newcolum); // insere nodo TD em 'tabela'
		newcolum.className='tabelaMedicos'; // atribui classe ao TD
		var txt=document.createTextNode(nome); // cria nome
		newcolum.appendChild(txt); // insere nome
		
		var newcolum=document.createElement("td"); //cria nodo TD
		newline.appendChild(newcolum); // insere nodo TD em 'tabela'
		newcolum.className='tabelaMedicos'; // atribui classe ao TD
		newcolum.align='right'; // atribui align ao TD
		var txt=document.createTextNode(crm); // cria crm
		newcolum.appendChild(txt); // insere crm
	}
}

function insereCoordenador(nome,crm,desc,s){ //,foto
	document.getElementById('coordenador').style.display = "block";
	document.getElementById('coordoa').src = "imgs/tit_coordenador"+s+".gif";
	document.getElementById('nomeCoord').innerHTML = nome;
	document.getElementById('crmCoord').innerHTML = crm;
	document.getElementById('descCoord').innerHTML = desc;
	//document.getElementById('fotoCoord').src = foto;
}

function initTabela() {
	tabela=document.getElementById('tabela');
	loadXMLDoc("medicos.xml");
}

