function validaForm(form,cor_validado,cor_erro){
	var erro = false;
	var tipo = Array();
	var msg = '';
	for(var i = 0; i < form.elements.length; i++) {
		if(form.elements[i].type == 'submit')
			var oBotaoSubmit = form.elements[i];

		if(form.elements[i].lang != undefined) {
			switch(form.elements[i].lang) {
				case 'vazio':
					if(!validaVazio(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('vazio') == -1)
							tipo.push('vazio');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
				case 'vazioRadio':
					if(!validaVazioRadio(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('vazioRadio') == -1)
							tipo.push('vazioRadio');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;				
				case 'email':
					if(!validaEmail(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('email') == -1)
							tipo.push('email');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
				case 'emailnaoobrigatorio':
					if(!validaEmailNaoObrigatorio(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('email') == -1)
							tipo.push('email');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
				case 'CEP':
					if(!validaCEP(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('CEP') == -1)
							tipo.push('CEP');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
				case 'data':
					if(!validaData(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('data') == -1)
							tipo.push('data');
					}
					else {
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
				case 'CPF':
					if(!validaCPF(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('CPF') == -1)
							tipo.push('CPF');
					}
					else
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
				break;
				case 'CNPJ':
					if(!validaCPF(form.elements[i]) || form.elements[i].value.length != 14) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('CNPJ') == -1)
							tipo.push('CNPJ');
					}
					else
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
				break;
				case 'numerico':
					if(!verificaNumerico(form.elements[i])) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('numerico') == -1)
							tipo.push('numerico');
					}
					else
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
				break;
			}
			switch(form.elements[i].id) {
				case 'igual':
					var objetoAuxiliar = window.document.getElementById(form.elements[i].lang);
					if(objetoAuxiliar.value != form.elements[i].value) {
						window.document.getElementById(form.elements[i].name).style.color = cor_erro;
						erro = erro || true;
						aux = tipo.toString();
						if(aux.indexOf('igual') == -1)
							tipo.push('igual');
					}
					else {
						window.document.getElementById(window.document.getElementById(form.elements[i].id).name).style.color = cor_validado;
						window.document.getElementById(form.elements[i].name).style.color = cor_validado;
						erro = erro || false;
					}
				break;
			}
		}
	}
	if(erro) {
		for(var i=0; i<tipo.length; i++) {
			switch(tipo[i]) {
				case 'vazio':	
					msg += 'Os campos em destaque são obrigatórios<br>';
				break;
				case 'vazioRadio':	
					msg += 'Selecione a opção mais adequada para prosseguir<br>';
				break;
				case 'email':	
					msg += 'O E-mail informado é inválido<br>';
				break;
				case 'CEP':	
					msg += 'O CEP informado é inválido<br>';
				break;
				case 'data':	
					msg += 'A Data informada é inválida<br>';
				break;
				case 'CPF':	
					msg += 'O CPF informado é inválido<br>';
				break;
				case 'CNPJ':	
					msg += 'O CNPJ informado é inválido<br>';
				break;
				case 'numerico':	
					msg += 'O valor informado não é um numérico válido!<br>';
				break;
				case 'igual':	
					msg += 'A confirmação não coincide com a nova senha!<br>';
				break;
			}
		}
		inicio = "<table width='100%'  border='0' cellpadding='0' cellspacing='0' class='AlertaTabela'><tr><td width='1%'><img src='/controle/imagens/alerta_erro.gif' alt='Atenção' width='119' height='24'></td><td width='99%'>";
	    fim = "</td></tr></table><tr><td>&nbsp;</td></tr>";

		msg = inicio+msg+fim;
		window.document.getElementById('msg').innerHTML = msg;
		if(window.document.getElementById('msgAuxiliar'))
			window.document.getElementById('msgAuxiliar').innerHTML = msg;
		
		return false;
	}
	
	if(oBotaoSubmit != null)
		oBotaoSubmit.disabled = true;
	return true;
}

function validaVazio(campo) {
	var regExp = /[_a-zA-Z0-9-]+/;
	if(!regExp.test(campo.value)) {
		return false;
	}
	return true;
}

function validaVazioRadio(campo) {
	if(campo.checked)
		return true;
	return false;
}

function validaEmail(campo) {
	var regExp = /^([_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[_a-z0-9-]+)+)$/;
	if(!regExp.test(campo.value)) {
		return false;
	}
	return true;
}

function validaEmailNaoObrigatorio(campo) {
	if(campo.value){
		var regExp = /^([_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[_a-z0-9-]+)+)$/;
		if(!regExp.test(campo.value)) {
			return false;
		}
		return true;
	}
	return true;
}

function validaCEP(campo) {
var regExp = /^[0-9]{8}$/;
	if(!regExp.test(campo.value)) {
		return false;
	}
	return true;
}

function validaData(campo){
	var vData = Array;
	var regExp = /^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/;
	
	if (!regExp.test(campo.value)) {	
		return false;
	}
	vData = campo.value.split('/');
	
	nDia = vData[0];
	nMes = vData[1];
	nAno = vData[2];
	
	if((nDia < 1) || (nDia > 31) || ((nDia == 31) && (nMes == 4 || nMes == 6 || nMes == 9 || nMes == 11 )))
		return false;
	
	if(nMes < 1 || nMes > 12)
		return false;
	
	if((nMes == 2 && nDia > 29) || (nMes == 2 && nDia == 29 && (parseInt(nAno/4) != nAno/4)))
		return false;
		
	return true;
}

function validaCPF(campo){
	if(campo.value==""){
		return false;
	}
	else {
		var z=campo.value;
		if(z.length!=11 && z.length!=14){
			return false;
		}
        else {
			if (z.length==11){
				var cpf2=campo.value;
				var j=10;
				x=0;
				for (var i=0; i <= 8; i=i+1){
					x+=cpf2.charAt(i)*j;
					j--;
				}
				var resto=x % 11;
				if (resto== 0 || resto==1) {
					dv1=0;
				}
				else{
					dv1=11-resto;
				}
				if (dv1!=cpf2.charAt(9)){
					return false;
				}
				else {
					var j = 11;
					var x2 = 0;
					for(i=0;i<=8;i++){
						x2 += cpf2.charAt(i)*j;
						j--;
					}
					x2+=dv1*2;
					resto2=x2 % 11;
					if (resto2== 0 || resto2==1) {
						dv2=0;
					}
					else {
						dv2=11-resto2;
					}
					if (dv2!=cpf2.charAt(10)){
						return false;
					}
					return true;
				}
			}
			else{
				var j=5;
				var x=0;
				var cpf2=campo.value;
				for(i=0;i<=3;i++){
					x+=cpf2.charAt(i)*j;
					j--;
				}
				j=9
				for (i=4;i<=11;i++){
					x+=cpf2.charAt(i)*j;
					j--;
				}
				resto=x % 11;
				if (resto == 0 || resto == 1) {
					dv1=0;
				}
				else{
					dv1=11-resto;
				}
				if(dv1!=cpf2.charAt(12)){
					return false;
				}
				else {
					var j=6;
					var x=0;
					for(i=0;i<=4;i++){
						x+=cpf2.charAt(i)*j;
						j--;
					}
					var j=9;
					for (i=5;i<=11;i++){
						x+=cpf2.charAt(i)*j;
						j--;
					}
					x+=dv1*2;
					resto=x % 11;
					if(resto == 1 || resto == 0){
						dv2=0;
					}
					else {
						dv2 = 11 - resto;
					}
					if(dv2!=cpf2.charAt(13)){
						return false;
					}
					else{
						return true;
					}
				}
			}
		}
	}
}

function verificaNumerico(campo) {
var regExp = /^[0-9]+(\.[0-9]{3})*(\,[0-9]+)?$/;

	if(!regExp.test(campo.value))
		// USADO PARA LIBERAR CASO SEJA VAZIO
		if(validaVazio(campo))
			return false;
	return true;
}
/*
function ocultaColuna(checkColuna,sIdTabela,nTotalArea,sColuna) {

	for(var nCountTabela = 0; nCountTabela < nTotalArea; nCountTabela++) {		
		var vTabela = document.getElementById(sIdTabela+nCountTabela);
		//alert(vTabela.id+' - '+vTabela.rows.length);
		if(nTotalArea == 1)
			nCountTabela = '';
		
		for(var nCount = 0; nCount < vTabela.rows.length; nCount++) {
			var oDiv = document.getElementById(sColuna+nCount+nCountTabela);
			var oColuna = document.getElementById("Coluna"+sColuna+nCount+nCountTabela);
	
			if(oDiv != null && oColuna != null) {
				if(checkColuna.checked) {
					oDiv.style.display = 'block';
					oColuna.style.padding = '8px';
				} else {
					oDiv.style.display = 'none';
					oColuna.style.padding = '0px';
				}//if(checkColuna.checked) {
			}//if(oDiv != null) {
		}//for(var nCount = 0; nCount < vTabela.rows.length; nCount++) {
	}
	
	return;
}
*/
function destacaLinha(oLinha,sEstilo){
	oLinha.className = sEstilo;
}


//FUNÇÃO RESPONSÁVEL POR VERIFICAR SE OS LINKS DENTRO DA TABELA SÃO POPUP
function verificaPopup(sIdTabela,nTitulo){
	var oTabela = document.getElementById(sIdTabela);
	//COMEÇANDO A PERCORRER AS LINHAS
	for(nLinha = nTitulo; nLinha < oTabela.rows.length; nLinha++){
		//PERCORRENDO COLUNAS DE CADA LINHA
		for(nCol = 0 ; nCol < oTabela.rows[nLinha].cells.length ; nCol++){
			//PARA CADA ELEMENTO HTML DENTRO DA COLUNA
			for(nFilho = 0 ; nFilho < oTabela.rows[nLinha].cells[nCol].childNodes.length; nFilho++){
				//SE FOR INPUT PEGA O VALOR, SE FOR O UM LINK, TRATA-SE ESTE LINK
				if(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].tagName == 'A') {
					if(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].target == "_blank")
						return true;
					else
						return false;
				}
			}
		}
	}
}


//FUNÇÃO RESPONSÁVEL POR CRIAR UM ARRAY COM TODO O CONTEÚDO DA TABELA Q SE VAI ORDENAR
function criaArrayDados(sIdTabela,nTitulo){
	var oTabela = document.getElementById(sIdTabela);
	var vTabela = new Array();
	var sVariavelLink = " ";
	//COMEÇANDO A PERCORRER AS LINHAS
	for(nLinha = nTitulo; nLinha < oTabela.rows.length; nLinha++){
		var vArray = new Array;
		//PERCORRENDO COLUNAS DE CADA LINHA
		for(nCol = 0 ; nCol < oTabela.rows[nLinha].cells.length ; nCol++){
			//PARA CADA ELEMENTO HTML DENTRO DA COLUNA
			for(nFilho = 0 ; nFilho < oTabela.rows[nLinha].cells[nCol].childNodes.length; nFilho++){
				//SE FOR INPUT PEGA O VALOR, SE FOR O UM LINK, TRATA-SE ESTE LINK
				if(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].tagName == 'INPUT'){
					vArray.push(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].value);
				} else if(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].tagName == 'A') {
					vVariavelLink = oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].href.split('?');
					sVariavelLink = vVariavelLink[1];
					vArray.push(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].innerHTML);
				} else if(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].tagName == 'DIV') {
					vArray.push(oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].innerHTML+"#!"+oTabela.rows[nLinha].cells[nCol].childNodes[nFilho].id+"#!"+oTabela.rows[nLinha].cells[nCol].id);
				} else {
					vArray.push(oTabela.rows[nLinha].cells[nCol].innerHTML);
				}
			}
		}
		vArray.push(sVariavelLink);
		vTabela.push(vArray);
		//for(var i = 0; i < vArray.length; i++)
			//alert(vArray[i]);
	}
	return vTabela;
}
// ORDENA A TABELA
function ordenaTabela(sIdTabela,sCampoId,nPosicaoId,nTitulo,nColuna,sColuna,sTipoOrdenamento,sHrefLink) {
	var vTabela = criaArrayDados(sIdTabela,nTitulo);
	var bPopup = verificaPopup(sIdTabela,nTitulo);
	
	// CONFIGURAÇÃO ESPECÍFICA
	var sDiretorioImagens = '/imagens/';
	var sEstiloTrPadrao = 'td_itens_tabela';
	var sEstiloTrDestaque = 'td_itens_tabela';
	var sEstiloTituloPadrao = 'sub_cabecalho_tabelas';
	var sEstiloTituloDestaque = 'sub_cabecalho_tabelas';
	var sEstiloCheck = 'check';
	
	var oTabela = document.getElementById(sIdTabela);
	var oImagem = document.getElementById(sIdTabela.replace('tabela','imagemOrdenacao')+nColuna);
	var oColunaTitulo = document.getElementById(sColuna);//alert(sColuna);
	var vSrc = oImagem.src.split('/');
	var sOrdenacao = '';
	//alert(oTabela.innerHTML);
	// LIMPA A TABELA QUE SERÁ REORDENADA
	reiniciaTabela(oTabela,nTitulo);
	
	// DESTACA O TÍTULO DA COLUNA A SER ORDENADA ALTERANDO O FUNDO DA COLUNA
	oColunaTitulo.className = sEstiloTituloDestaque;
	
	// ALTERA A IMAGEM QUE INDICA A ORDENAÇÃO DA COLUNA
	switch(vSrc[vSrc.length-1]) {
		case 'desordenado.gif':
			sOrdenacao = 'decrescente';
			oImagem.src = sDiretorioImagens + 'ordenado_decr.gif';
		break;
		case 'ordenado_decr.gif':
			sOrdenacao = 'crescente';
			oImagem.src = sDiretorioImagens + 'ordenado_cres.gif';
		break;
		case 'ordenado_cres.gif':
			sOrdenacao = 'decrescente';
			oImagem.src = sDiretorioImagens + 'ordenado_decr.gif';
		break;
	}

	// CHAMA O MÉTODO ADEQUADO DE ORDENAÇÃO, DE ACORDO COM O TIPO DE DADO DA COLUNA
	switch(sTipoOrdenamento) {
		case 'numerico':
			vTabela = ordenaVetorNumerico(vTabela,nColuna,sOrdenacao);
		break;
		case 'string':
			vTabela = ordenaVetorString(vTabela,nColuna,sOrdenacao);
		break;
		case 'data':
			vTabela = ordenaVetorData(vTabela,nColuna,sOrdenacao);
		break;
	}
	
	// CRIA AS LINHAS DA TABELA
	for(var nLinha = 0; nLinha < vTabela.length; nLinha++) {
		var nQtdColunas = vTabela[nLinha].length;
		var oTr = oTabela.insertRow(nTitulo);
		oTr.bgcolor = 'ffffff';
		oTr.className = sEstiloTrPadrao;
		
		oTr.onmouseover = function() {
			destacaLinha(this,sEstiloTrDestaque); 
		}
		oTr.onmouseout = function() {
			destacaLinha(this,sEstiloTrPadrao);
		}
		
		// CASO TENHA CHECKBOX
		if(nPosicaoId >= 0) {
			var oCheck = document.createElement("input");
			oCheck.type = "checkbox";
			oCheck.name = sCampoId;
			oCheck.value = vTabela[nLinha][nPosicaoId];
			oCheck.className = sEstiloCheck;
			oCheck.onclick = function() {
				atualizaImagens(sIdTabela.replace('tabela','form'),sIdTabela.replace('tabela',''));
			}
		}
		
		// INSERE AS COLUNAS
		for(var nNovaColuna = nQtdColunas-1; nNovaColuna > 0; nNovaColuna--) {
			var oTd = oTr.insertCell(0);
			
			if(nNovaColuna == 1 && nPosicaoId >= 0)
				oTd.appendChild(oCheck);
			else {
				
				//INSERE O LINK NAS COLUNAS
				if(sHrefLink != ''){
					var oLink = document.createElement("a");
					sVariaveis = vTabela[nLinha][nQtdColunas-1];
					oLink.href = sHrefLink + '?' + sVariaveis;
					if(bPopup)
						oLink.target = '_blank';
					oLink.appendChild(document.createTextNode(vTabela[nLinha][nNovaColuna-1].replace('&nbsp;','')));
					oTd.appendChild(oLink);
				} else {
					var oDiv = document.createElement("div");
					vConteudo = vTabela[nLinha][nNovaColuna-1].split("#!");
					oDiv.id = vConteudo[1];
					oTd.id = vConteudo[2];
					
					oDiv.appendChild(document.createTextNode(vConteudo[0].replace('&nbsp;','')));
					oTd.appendChild(oDiv);
				}
			}
		}
	}
	
	// OCULTA AS IMAGENS DAS COLUNAS QUE NÃO ESTÃO SENDO USADAS PARA ORDERNAR
	ocultaImagemOrdenacao(sIdTabela.replace('tabela',''),nColuna,nQtdColunas,sDiretorioImagens);
	
	// RETIRA O DESTAQUE DAS COLUNAS QUE NÃO ESTÃO SENDO USADAS PARA ORDERNAR
	retiraDestaqueTitulo(sIdTabela.replace('tabela',''),nColuna,nQtdColunas,sEstiloTituloPadrao);	
	return;
}

// DAQUI PARA BAIXO ESTA OK ----------------------------------
// ORDENA VETOR DE DATAS
function ordenaVetorData(vTabela,nColuna,sOrdenacao) {
	var vAux = Array();
	var vAux2 = Array();
	var vResultado = Array();
	var sCondicao = (sOrdenacao == 'crescente') ? "nDiaAnterior > nDiaPosterior" : "nDiaAnterior < nDiaPosterior";
	var nAux = 0;
	var nCount = 0;

	for(var i = 0; i < vTabela.length; i++){
		vAux.push(vTabela[i][nColuna]);
	}

	for(var i = 0; i < vAux.length; i++) {
		for(var j = vAux.length-1; j > i; j--) {
			var vDataHoraAnterior  = vAux[j-1].split(' ');
			var vDataHoraPosterior = vAux[j].split(' ');
			if(vDataHoraAnterior.length == 2) {
				var vDataAnterior  = vDataHoraAnterior[0].split('/');
				var vDataPosterior = vDataHoraPosterior[0].split('/');
				var vHoraAnterior  = vDataHoraAnterior[1].split(':');
				var vHoraPosterior = vDataHoraPosterior[1].split(':');
				var oDiaAnterior  = new Date(vDataAnterior[2],vDataAnterior[1],vDataAnterior[0],vHoraAnterior[0],vHoraAnterior[1],vHoraAnterior[2]);
				var oDiaPosterior = new Date(vDataPosterior[2],vDataPosterior[1],vDataPosterior[0],vHoraPosterior[0],vHoraPosterior[1],vHoraPosterior[2]);
			} else {
				var vDataAnterior  = vAux[j-1].split('/');
				var vDataPosterior = vAux[j].split('/');
				var oDiaAnterior  = new Date(vDataAnterior[2],vDataAnterior[1],vDataAnterior[0]);
				var oDiaPosterior = new Date(vDataPosterior[2],vDataPosterior[1],vDataPosterior[0]);
			}
			var nDiaAnterior  = oDiaAnterior.getTime();
			var nDiaPosterior = oDiaPosterior.getTime();

			if(eval(sCondicao)) {
				nAux = vAux[j];
				vAux[j] = vAux[j-1];
				vAux[j-1] = nAux;
			}				   
		}
	}

	for(var j = 0; j < vAux.length; j++) {
		for(var i = 0; i < vTabela.length; i++) {
			if(vTabela[i][nColuna] == vAux[j] && !in_array(i,vAux2)) {
				vResultado[nCount++] = vTabela[i];
				vAux2.unshift(i);
			}
		}
	}
	
	return vResultado;
}

// ORDENA VETOR DE STRINGS
function ordenaVetorString(vTabela,nColuna,sOrdenacao) {
	var vAux = Array(); 
	var vAux2 = Array();
	var vResultado = Array();
	var nCount = 0;

	for(var i = 0; i < vTabela.length; i++) 
		vAux.push(vTabela[i][nColuna].toLowerCase());
		
	vAux.sort();
	
	if(sOrdenacao == 'decrescente')
		vAux.reverse();
	
	for(var j = 0; j < vAux.length; j++) {
		for(var i = 0; i < vTabela.length; i++) {
			if(vTabela[i][nColuna].toLowerCase() == vAux[j] && !in_array(i,vAux2)) {
				vResultado[nCount++] = vTabela[i];
				vAux2.unshift(i);
			}
		}
	}
	
	return vResultado;
}

// ORDENA VETOR DE NÚMEROS
function ordenaVetorNumerico(vTabela,nColuna,sOrdenacao) {
	var nAux = 0;
	var sCondicao = (sOrdenacao == 'crescente') ? "Number(vTabela[j-1][nColuna].replace('.','').replace(',','.').replace('&nbsp;','')) > Number(vTabela[j][nColuna].replace('.','').replace(',','.').replace('&nbsp;',''))" : "Number(vTabela[j-1][nColuna].replace('.','').replace(',','.')) < Number(vTabela[j][nColuna].replace('.','').replace(',','.'))";
	for(var i = 0; i < vTabela.length; i++) {
		for(var j = vTabela.length-1; j > i; j--) {
			if(eval(sCondicao)) {
				nAux = vTabela[j];
				vTabela[j] = vTabela[j-1];
				vTabela[j-1] = nAux;
			}
		}
	}
	return vTabela;
}

function in_array(xValor,vVetor) {
  var sTexto = "¬" + vVetor.join("¬") + "¬";
  var oReg = new RegExp ("¬" + xValor + "¬", "gim");
  return (sTexto.match(oReg)) ? true : false;
}

// LIMPA A TABELA QUE SERÁ REORDENADA
function reiniciaTabela(oTabela,nLinhaInicial) {
	var nLinhas = oTabela.rows.length - nLinhaInicial;

	for(var i = 0; i < nLinhas; i++) {
		oTabela.deleteRow(nLinhaInicial);
	}
	return;
}

// OCULTA AS IMAGENS DAS COLUNAS QUE NÃO ESTÃO SENDO USADAS PARA ORDERNAR
function ocultaImagemOrdenacao(sIdImagem,nColunaSelecionada,nQtdColunas,sDiretorioImagens) {
	for(var nCount = 0; nCount <= nQtdColunas; nCount++) {
		if(nCount != nColunaSelecionada) {
			var oImagem = document.getElementById('imagemOrdenacao'+sIdImagem+nCount);
			if(oImagem != null)
				oImagem.src = sDiretorioImagens + 'desordenado.gif';
		}
	}
	return;
}

// RETIRA O DESTAQUE DAS COLUNAS QUE NÃO ESTÃO SENDO USADAS PARA ORDERNAR
function retiraDestaqueTitulo(sNomeColuna,nColunaSelecionada,nQtdColunas,sFundoPadrao) {
	for(var nCount = 0; nCount <= nQtdColunas; nCount++) {
		if(nCount != nColunaSelecionada) {
			var oColunaTitulo = document.getElementById('colunaTitulo'+sNomeColuna+nCount);
			if(oColunaTitulo != null)
				oColunaTitulo.className = sFundoPadrao;
		}
	}
	return;
}

function Flash(src) { 
	document.write(src);
}

//FUNÇÃO PARA PREENCHER O ENDERECO APOS DIGITAR O CEP
function recuperaNavio(form,nIdNavio,sDocumento){
	oXmlHttp = inicializaXlmHttp();
	oXmlHttp.open("GET",sDocumento+"?nIdNavio="+nIdNavio,true);
	oXmlHttp.onreadystatechange = function(){
		if(oXmlHttp.readyState == 4){
			if(oXmlHttp.status == 200){
				var sConteudo = oXmlHttp.responseText;
				sConteudo = sConteudo.replace(/\+/g," ");
			    sConteudo = unescape(sConteudo);
				vConteudo = sConteudo.split('#');
				if(vConteudo[0]) {
					form.fNomeNavio.value = vConteudo[0];
					form.fNomeAnterior.value = vConteudo[1];
					form.fArmador.value = vConteudo[2];
					form.fOper.value = vConteudo[3];
					form.fBandeira.value = vConteudo[4];
					form.fCall.value = vConteudo[5];
					form.fTbruta.value = vConteudo[6];
					form.fTliquida.value = vConteudo[7];
					form.fDwt.value = vConteudo[8];
					form.fVelocidade.value = vConteudo[9];
					form.fPontal.value = vConteudo[10];
					form.fBoca.value = vConteudo[11];
					form.fLoa.value = vConteudo[12];
					form.fAno.value = vConteudo[13];
					form.fClasse.value = vConteudo[14];
					form.fSociedade.value = vConteudo[15];
					form.fGrupo.value = vConteudo[16];
					form.fPasso.value = vConteudo[17];
					form.fTipoNavio.value = vConteudo[18];
					form.fImo.value = vConteudo[19];
					form.fBowthruster.value = vConteudo[20];
					form.fSternthruster.value = vConteudo[21];
					form.fCalado.value = vConteudo[22];
				} else {
					form.fNomeNavio.value = '';
					form.fNomeAnterior.value = '';
					form.fArmador.value = '';
					form.fOper.value = '';
					form.fBandeira.value = '';
					form.fCall.value = '';
					form.fTbruta.value = '';
					form.fTliquida.value = '';
					form.fDwt.value = '';
					form.fVelocidade.value = '';
					form.fPontal.value = '';
					form.fBoca.value = '';
					form.fLoa.value = '';
					form.fAno.value = '';
					form.fClasse.value = '';
					form.fSociedade.value = '';
					form.fGrupo.value = '';
					form.fPasso.value = '';
					form.fTipoNavio.value = '';
					form.fImo.value = '';
					form.fBowthruster.value = '';
					form.fSternthruster.value = '';
					form.fCalado.value = '';
					//alert("Navio não encontrado.");
				}
			} else 
				alert('Problemas na conexão com o servidor! Tente novamente');
		}//if(oXmlHttp.readyState == 4)
	}
	oXmlHttp.send(null);
}

//FUNÇÃO RESPONSÁVEL POR MONTAR O SELECT
function montaSelect(nIdSelect,sConteudo,nIdSelecionado){
	oSelect = document.getElementById(nIdSelect);
	sConteudo = sConteudo.replace(/\+/g," ");
    sConteudo = unescape(sConteudo);
	limpaSelect(oSelect);
	vLinha = sConteudo.split('##');
	for(var i = 0 ; i < vLinha.length ; i++){
		vCampo = vLinha[i].split('#');
		oOption = new Option(vCampo[1],vCampo[0]);
		if(nIdSelecionado == oOption.value)
			oOption.selected = true;
		oSelect.options[oSelect.length] = oOption;
	}
}

//MÉTODO RESPONSÁVEL POR INICIALIZAR O OBJETO XMLHTTPREQUEST
function inicializaXlmHttp(){
	try{
    	oXmlHttp = new XMLHttpRequest();
	}catch(ee){
   		try{
        	oXmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    	}catch(e){
        	try{
            	oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        	}catch(E){
				oXmlHttp = false;
        	}
		}
    }
	return oXmlHttp;
}