function NewXMLHTTP() {
	try {
	    xmlhttp = new XMLHttpRequest();
	} catch(ee) {
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(E) {
				xmlhttp = false;
			}
		}
	}
	return xmlhttp;
}

function getNome(seg,id)
{	
	//CRIA OBJETO
	if (window.XMLHttpRequest){
	    var XMLObj = new XMLHttpRequest();
	}else if(window.ActiveXObject){
	    var XMLObj = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	XMLObj.onreadystatechange = function ()
	{
		switch (XMLObj.readyState)
		{
			case 1:								
				if(document.getElementById('autor'+id))
				{
					document.getElementById('autor'+id).value='Pesquisando...';
				}
				
				break;
			
			case 4:
				//XML PARSER
				var xmlDoc = XMLObj.responseXML;
	
				// Carrega valores do XML
				var getnome = xmlDoc.getElementsByTagName('nome').item(0).firstChild.data;
				
				if(getnome=='ERRO')
				{
					getnome = 'RGM não encontrado...';
					if(document.getElementById('rgm'+id))
					{
						if(document.getElementById('rgm'+id).value!='')
						{
							document.getElementById('rgm'+id).value='';
							document.getElementById('rgm'+id).focus();
						}
					}
				}
								
				if(document.getElementById('autor'+id))
				{
					document.getElementById('autor'+id).value=getnome;
				}				
					
				break;			
		}
	};
	
	var rgm = document.getElementById('rgm'+id).value;

	//CARREGA XML
	XMLObj.open("GET", '/index.php/Eventos/Cientificos/Trabalhos/Publicacao/Ajax/'+seg+'/'+rgm, true);
	XMLObj.send(null);
}

/**
 * Faz requisição e interpreta XML de retorno, preenchendo um determinado select com os itens.
 * @param string url
 * @param object SelectObj
 * @param string DefaultValue
 * @param boolean Assincrona
 */
function bedGetCampos(url, SelectObj, DefaultValue, Assincrona)
{	
	if(Assincrona == undefined){Assincrona=true};

	//CRIA OBJETO
	if (window.XMLHttpRequest){
	    var XMLObj = new XMLHttpRequest();
	}else if(window.ActiveXObject){
	    var XMLObj = new ActiveXObject("Microsoft.XMLHTTP");
	}

	//PERSONALIZACAO DE EVENTOS
	XMLObj.onreadystatechange = function () {
		switch(XMLObj.readyState){
			case 1:
				//EXIBE STATUS CARREGANDO
				SelectObj.disabled = true;
				SelectObj.options.length = 0;
				SelectObj.options[0] = new Option("Carregando...", "");

				break;
			case 4:
				//INICIA A MONTAGEM DO SELECT
				SelectObj.options.length = 0;
				SelectObj.options[0] = new Option("Selecione", "");

				//XML PARSER
				var xmlDoc = XMLObj.responseXML;

				var Row = xmlDoc.getElementsByTagName('linha');

				//CRIA OPTION PARA O SELECT
				for(i=0; i < Row.length; i++){
					SelectObj.options[SelectObj.options.length] = new Option(
															Row[i].getElementsByTagName('nome').item(0).firstChild.data,
															Row[i].getElementsByTagName('codigo').item(0).firstChild.data
															);
				}
				//OPTION SELECIONADO POR PADRAO
				if (DefaultValue == undefined) DefaultValue = "";
				SelectObj.value = DefaultValue;
				SelectObj.disabled = false;

				break;
		}
	};

	//CARREGA XML
	XMLObj.open("GET", url, Assincrona);
	XMLObj.send(null);

	// MODO SÍNCRONO
	if(!Assincrona)
	{
		//INICIA A MONTAGEM DO SELECT
		SelectObj.options.length = 0;
		SelectObj.options[0] = new Option("", "");

		//XML PARSER
		var xmlDoc = XMLObj.responseXML;

		var Row = xmlDoc.getElementsByTagName('linha');

		//CRIA OPTION PARA O SELECT
		for(i=0; i < Row.length; i++){
			SelectObj.options[SelectObj.options.length] = new Option(
													Row[i].getElementsByTagName('nome').item(0).firstChild.data,
													Row[i].getElementsByTagName('codigo').item(0).firstChild.data
													);
		}
		//OPTION SELECIONADO POR PADRAO
		if (DefaultValue == undefined) DefaultValue = "";
		SelectObj.value = DefaultValue;
		SelectObj.disabled = false;
	}
}
