// JavaScript Document

var ObjClassName1 = "Caixa1";
var ObjClassName2 = "Caixa2";


function reAgendar(id){
	var r = confirm('Esta opção irá redirecionar o usuário para a \ntela de preenchimento dos dados para consulta, após confirmação da tela seguinte,\n a atual consulta será excluída e a nova armazenada.\nEstá certo disto?');
	if(r) {
		$("formConsulta" + id).submit();
	}
}


function isNumber(x){
	var anum=/(^\d+$)|(^\d+\.\d+$)/;
	if (anum.test(x)) testresult=true;
	else testresult=false; 
	return (testresult);
}

function AlterSelection(opt, total){
	var objTexto = "OptObj";
	var objOpt = "OptFiltro";
	for(i=0;i<total;i++) {
		document.getElementById(objOpt + i).className = ObjClassName2;
		document.getElementById(objTexto + i).style.display = "none";
	}
	document.getElementById(objOpt + opt).className = ObjClassName1;
	document.getElementById(objTexto + opt).style.display = "block";
}


function IsValidBrowser(){
	//var Versao = parseInt(navigator.appVersion);
	var Navi = navigator.appName;
	if(Navi == "Microsoft Internet Explorer") {
		return true;
	} else return false;
}

function ChecaOpcoes(objCheck){
	var checado = false;
	for(i=0;i<objCheck.length;i++){
		if(objCheck[i].checked) checado = true;
	}	
	return checado;
}

function $(ID){	
	return document.getElementById(ID);
}

function ExibeOcultaDetalhe(tableID, linkID, imgID){
	if(document.getElementById(tableID).style.display == "none"){
		document.getElementById(tableID).style.display = "block";
		document.getElementById(linkID).innerHTML = "Ocultar";
		document.getElementById(imgID).src = "../images/icon_menos.gif";
	} else {
		document.getElementById(tableID).style.display = "none";
		document.getElementById(linkID).innerHTML = "Mostrar";
		document.getElementById(imgID).src = "../images/icon_mais.gif";
	}
}

function AjaxSLoading(url, local)
{
	var a = new AjaxClass(url, local);
	a.ajax();
	/*if (window.XMLHttpRequest)  {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function (){
		if (xmlhttp.readyState==4) {
			if (xmlhttp.status==200) {	  
				document.getElementById(local).innerHTML= xmlhttp.responseText;
			} else {
				document.getElementById(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + xmlhttp.statusText;
			}
		}
	}
	xmlhttp.open("GET",url);
	xmlhttp.send(null);*/
}

function Ajax(url, local, method, PostString)
{
	var a = new AjaxClass(url, local, method, PostString);
	$("loading").style.display = "block";
	a.objAjax.onreadystatechange = function(){	
		if (a.objAjax.readyState==4) {
			$("loading").style.display = "none";
			if (a.objAjax.status==200) {
				$(local).innerHTML = a.objAjax.responseText;
			} else {
				$(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + a.objAjax.statusText;
			}
		}
	}
	a.ajaxManual();
	/*document.getElementById("loading").style.display = "block";
	if (window.XMLHttpRequest)  {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function (){
		if (xmlhttp.readyState==4) {
			document.getElementById("loading").style.display = "none";
			if (xmlhttp.status==200) {	  
				document.getElementById(local).innerHTML= xmlhttp.responseText;
			} else {
				document.getElementById(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + xmlhttp.statusText;
			}
		}
	}
	method = method.toUpperCase();
	xmlhttp.open(method,url);
	if(method == "POST"){
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", PostString.length);
		xmlhttp.setRequestHeader("Connection", "close");
	} else {
		PostString = null;
	}	
	xmlhttp.send(PostString);*/
}

function SalvaForm(url, local, method, PostString){
	/*
	if (window.XMLHttpRequest)  {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function (){
		if (xmlhttp.readyState==4) {
			if (xmlhttp.status==200) {	  
				document.getElementById(local).innerHTML= xmlhttp.responseText;
			} else {
				document.getElementById(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + xmlhttp.statusText;
			}
		}
	}
	method = method.toUpperCase();
	xmlhttp.open(method,url);
	if(method == "POST"){
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", PostString.length);
		xmlhttp.setRequestHeader("Connection", "close");
	} else {
		PostString = null;
	}	
	xmlhttp.send(PostString);
	*/
	var a = new AjaxClass(url, local, "post", PostString);
	a.objAjax.onreadystatechange = function(){	
		if (a.objAjax.readyState==4) {
			if (a.objAjax.status==200) {
				$(local).innerHTML = a.objAjax.responseText;
			} else {
				$(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + a.objAjax.statusText;
			}
		}
	}
	a.ajaxManual();
}

function TrocaEspacosBranco(conteudo){
	conteudo = conteudo.replace(/ /g,"#");
	conteudo = conteudo.replace(/¡/g,"||iexcl;");
	conteudo = conteudo.replace(/¢/g,'||cent;');
	conteudo = conteudo.replace(/£/g,'||pound;');
	conteudo = conteudo.replace(/¤/g,'||curren;');
	conteudo = conteudo.replace(/¥/g,'||yen;');
	conteudo = conteudo.replace(/¦/g,'||brvbar;');
	conteudo = conteudo.replace(/§/g,'||sect;');
	conteudo = conteudo.replace(/¨/g,'||uml;');
	conteudo = conteudo.replace(/©/g,'||copy;');
	conteudo = conteudo.replace(/ª/g,'||ordf;');
	conteudo = conteudo.replace(/«/g,'||laquo;');
	conteudo = conteudo.replace(/¬/g,'||not;');
	conteudo = conteudo.replace(/­/g,'||shy;');
	conteudo = conteudo.replace(/®/g,'||reg;');
	conteudo = conteudo.replace(/¯/g,'||macr;');
	conteudo = conteudo.replace(/°/g,'||deg;');
	conteudo = conteudo.replace(/±/g,'||plusmn;');
	conteudo = conteudo.replace(/²/g,'||sup2;');
	conteudo = conteudo.replace(/³/g,'||sup3;');
	conteudo = conteudo.replace(/´/g,'||acute;');
	conteudo = conteudo.replace(/µ/g,'||micro;');
	conteudo = conteudo.replace(/¶/g,'||para;');
	conteudo = conteudo.replace(/·/g,'||middot;');
	conteudo = conteudo.replace(/¸/g,'||cedil;');
	conteudo = conteudo.replace(/¹/g,'||sup1;');
	conteudo = conteudo.replace(/º/g,'||ordm;');
	conteudo = conteudo.replace(/»/g,'||raquo;');
	conteudo = conteudo.replace(/¼/g,'||frac14;');
	conteudo = conteudo.replace(/½/g,'||frac12;');
	conteudo = conteudo.replace(/¾/g,'||frac34;');
	conteudo = conteudo.replace(/¿/g,'||iquest;');
	conteudo = conteudo.replace(/À/g,'||Agrave;');
	conteudo = conteudo.replace(/Á/g,'||Aacute;');
	conteudo = conteudo.replace(/Â/g,'||Acirc;');
	conteudo = conteudo.replace(/Ã/g,'||Atilde;');
	conteudo = conteudo.replace(/Ä/g,'||Auml;');
	conteudo = conteudo.replace(/Å/g,'||Aring;');
	conteudo = conteudo.replace(/Æ/g,'||AElig;');
	conteudo = conteudo.replace(/Ç/g,'||Ccedil;');
	conteudo = conteudo.replace(/È/g,'||Egrave;');
	conteudo = conteudo.replace(/É/g,'||Eacute;');
	conteudo = conteudo.replace(/Ê/g,'||Ecirc;');
	conteudo = conteudo.replace(/Ë/g,'||Euml;');
	conteudo = conteudo.replace(/Ì/g,'||Igrave;');
	conteudo = conteudo.replace(/Í/g,'||Iacute;');
	conteudo = conteudo.replace(/Î/g,'||Icirc;');
	conteudo = conteudo.replace(/Ï/g,'||Iuml;');
	conteudo = conteudo.replace(/Ð/g,'||ETH;');
	conteudo = conteudo.replace(/Ñ/g,'||Ntilde;');
	conteudo = conteudo.replace(/Ò/g,'||Ograve;');
	conteudo = conteudo.replace(/Ó/g,'||Oacute;');
	conteudo = conteudo.replace(/Ô/g,'||Ocirc;');
	conteudo = conteudo.replace(/Õ/g,'||Otilde;');
	conteudo = conteudo.replace(/×/g,'||times;');
	conteudo = conteudo.replace(/Ø/g,'||Oslash;');
	conteudo = conteudo.replace(/Ù/g,'||Ugrave;');
	conteudo = conteudo.replace(/Ú/g,'||Uacute;');
	conteudo = conteudo.replace(/Û/g,'||Ucirc;');
	conteudo = conteudo.replace(/Ü/g,'||Uuml;');
	conteudo = conteudo.replace(/Ý/g,'||Yacute;');
	conteudo = conteudo.replace(/Þ/g,'||THORN;');
	conteudo = conteudo.replace(/ß/g,'||szlig;');
	conteudo = conteudo.replace(/à/g,'||agrave;');
	conteudo = conteudo.replace(/á/g,'||aacute;');
	conteudo = conteudo.replace(/â/g,'||acirc;');
	conteudo = conteudo.replace(/ã/g,'||atilde;');
	conteudo = conteudo.replace(/ä/g,'||auml;');
	conteudo = conteudo.replace(/å/g,'||aring;');
	conteudo = conteudo.replace(/æ/g,'||aelig;');
	conteudo = conteudo.replace(/ç/g,'||ccedil;');
	conteudo = conteudo.replace(/è/g,'||egrave;');
	conteudo = conteudo.replace(/é/g,'||eacute;');
	conteudo = conteudo.replace(/ê/g,'||ecirc;');
	conteudo = conteudo.replace(/ë/g,'||euml;');
	conteudo = conteudo.replace(/ì/g,'||igrave;');
	conteudo = conteudo.replace(/í/g,'||iacute;');
	conteudo = conteudo.replace(/î/g,'||icirc;');
	conteudo = conteudo.replace(/ï/g,'||iuml;');
	conteudo = conteudo.replace(/ð/g,'||eth;');
	conteudo = conteudo.replace(/ñ/g,'||ntilde;');
	conteudo = conteudo.replace(/ò/g,'||ograve;');
	conteudo = conteudo.replace(/ó/g,'||oacute;');
	conteudo = conteudo.replace(/ô/g,'||ocirc;');
	conteudo = conteudo.replace(/õ/g,'||otilde;');
	conteudo = conteudo.replace(/ö/g,'||ouml;');
	conteudo = conteudo.replace(/÷/g,'||divide;');
	conteudo = conteudo.replace(/ø/g,'||oslash;');
	conteudo = conteudo.replace(/ù/g,'||ugrave;');
	conteudo = conteudo.replace(/ú/g,'||uacute;');
	conteudo = conteudo.replace(/û/g,'||ucirc;');
	conteudo = conteudo.replace(/ü/g,'||uuml;');
	conteudo = conteudo.replace(/ý/g,'||yacute;');
	conteudo = conteudo.replace(/þ/g,'||thorn;');
	conteudo = conteudo.replace(/ÿ/g,'||yuml;');
	return conteudo
}

function ExibeOculta(destino){
	if(document.getElementById(destino).style.display == "none"){
		document.getElementById(destino).style.display = "block";
	} else {
		document.getElementById(destino).style.display = "none";
	}
}

function verNavegador(){
	//var Versao = parseInt(navigator.appVersion);	
	return navigator.appName.toLowerCase;
}

function ValidaResp(msg) {
	if(confirm(msg)) return true;
	else return false;
}

function EditaCampo(localID){
	var enrolacao = "Unica solução encontrada para não dar erro!!! Prometo melhorar.";
}


function convertData(a){
	var valor = a.value;
	if(valor.indexOf("/") == -1){
		if(valor.length > 2 && valor.length < 5) 
			a.value = valor.substr(0,2) + "/" + valor.substr(2,1);
	} 
	if(valor.lastIndexOf("/") < 5){
		if(valor.length > 5) 
			a.value = valor.substr(0,5) + "/" + valor.substr(5,1);
	}
	if(valor.length > 10)
		a.value = valor.substr(0,10);	
}

function validaData(objData){
	var data = objData.value.toString();
	if(data) {
		var dia = data.substr(0,2);
		var mes = data.substr(3,2);
		var ano = data.substr(6,4);
		var erro = "";
		if(isNumber(dia) && isNumber(mes) && isNumber(ano) && data.length == 10) {
			try {
				dia = parseInt(dia);
				mes = parseInt(mes);
				ano = parseInt(ano);
				dataAtual = new Date();
				anoAtual = dataAtual.getFullYear();
				if(dia > 31) erro += "\n- Foi digitado um número maior que 31 para dia.";
				if(mes > 12) erro += "\n- Foi colocado um número maior que 12 para mês.";
				if(ano > (anoAtual+50) || ano < (anoAtual-120)) erro += "\n- O ano foi digitado incorretamente";
				if(dia == 29 && mes == 2 && !anoBissesto(ano)) erro += "\n- O ano digitado não é bissesto para ter 29 dias";
				if(dia > 29 && mes == 2) erro += "\n- O mês de fevereiro não tem mais de 29 dias.";
				if((dia > 30 && mes == 4) || (dia > 30 && mes == 6) || (dia > 30 && mes == 4) || (dia > 30 && mes == 6) || (dia > 30 && mes == 9) || (dia > 30 && mes == 11)) erro += "\n- O mês de digitado possui no máximo 30 dias.";
				if((dia > 31 && mes == 1) || (dia > 31 && mes == 3) || (dia > 31 && mes == 5) || (dia > 31 && mes == 7) || (dia > 31 && mes == 8) || (dia > 31 && mes == 10) || (dia > 31 && mes == 12)) erro += "\n- O mês de digitado possui no máximo 31 dias.";
			} catch(e){
				erro += "\n- Foi digitado um caracter não-numérico na data.";
			}
		} else {
			erro += "\n- Foi digitado um caracter não-numérico na data.";
		}
		if(erro) {
			alert("Data Inválida:\n" + erro);
			objData.value = "";
			objData.focus();
		}
	}
}

function anoBissesto(ano){
	if((((ano % 4) == 0 && (ano % 100)!=0) || (ano % 400)==0))
		return true;
	else
		return false;
}



/*****************************************
* Autor: Daniel Marcoto
* Data: 13/10/2006
* Objetivo: Cria o objeto ajax
*****************************************/

function AjaxClass(url, local, metodo, params)
{
	this.url = url;
	this.local = local;
	this.metodo = metodo;
	this.params = params;
	this.objAjax = this.contruct();
}

AjaxClass.prototype.contruct = function(){
	var xml;
	if (window.XMLHttpRequest)  {
		xml = new XMLHttpRequest();
	} else {
		xml = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return xml;
}

AjaxClass.prototype.formStandard = function(b){
	do {
		b = b.replace(/ /,"|!|");
	} while(b.search(/ /) > 0);
	return b;
}

AjaxClass.prototype.ajaxManual = function(){
	var local = this.local;
	var obj = this.objAjax;
	if(!this.params) this.params = null;
	if(!this.metodo) this.metodo = "GET";
	this.metodo = this.metodo.toUpperCase();	
	
	this.objAjax.open(this.metodo,this.url, true);	
	
	if(this.metodo == "POST" && this.params){
		this.objAjax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		this.objAjax.setRequestHeader("Cache-Control","no-store, no-cache, must-revalidate");
		this.objAjax.setRequestHeader("Cache-Control","post-check=0, pre-check=0");
		this.objAjax.setRequestHeader("Pragma", "no-cache");
	}
	
	this.objAjax.send(this.params);
}

AjaxClass.prototype.ajax = function(){
	var local = this.local;
	var obj = this.objAjax;
	if(!this.params) this.params = null;
	if(!this.metodo) this.metodo = "GET";
	this.metodo = this.metodo.toUpperCase();
		
	this.objAjax.open(this.metodo,this.url, true);	
	
	if(this.metodo == "POST" && this.params){
		this.objAjax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		this.objAjax.setRequestHeader("Cache-Control","no-store, no-cache, must-revalidate");
		this.objAjax.setRequestHeader("Cache-Control","post-check=0, pre-check=0");
		this.objAjax.setRequestHeader("Pragma", "no-cache");
	}
	
	this.objAjax.onreadystatechange = function(){	
		if (obj.readyState==4) {
			if (obj.status==200) {
				$(local).innerHTML = obj.responseText;
			} else {
				$(local).innerHTML = "Ocorreu um erro no momento de carregar a página.<br> Descrição do erro: " + obj.statusText;
			}
		}
	}
	this.objAjax.send(this.params);
}
