// JavaScript Document// JavaScript Document


function carrega(pagina, div){
    ajaxGet(pagina,document.getElementById(div),true);
}


function textOn(txt){
document.getElementById(txt).className="campoSelecionado";
}

function textNormal(txt){
document.getElementById(txt).className="campoNormal";
}



//Verifica qual o browser do visitante e armazena na vari?vel p?bica clientNavigator,
//Caso Internet Explorer(IE) outros (Other)
var clientNavigator = "";
if (navigator.appName.indexOf('Microsoft') != -1){
	clientNavigator = "IE";
}else{
	clientNavigator = "Other";
}

if(clientNavigator == "IE") { // Internet Explorer
    nTecla = "";
    }
  else if(clientNavigator == "Other") { // Nestcape    	  
    nTecla = document.onkeydown;
  }
if(nTecla == '27'){
	window.close();
}
/*** 
* Descrição.: formata um campo do formulário de 
* acordo com a máscara informada... 
* Parâmetros: - objForm (o Objeto Form) 
* - strField (string contendo o nome 
* do textbox) 
* - sMask (mascara que define o 
* formato que o dado será apresentado, 
* usando o algarismo "9" para 
* definir números e o símbolo "!" para 
* qualquer caracter... 
* - evtKeyPress (evento) 
* Uso.......: <input type="textbox" 
* name="xxx"..... 
* onkeypress="return txtBoxFormat(document.rcfDownload, 'str_cep', '99999-999', event);"> 
* Observação: As máscaras podem ser representadas como os exemplos abaixo: 
* CEP -> 99.999-999 
* CPF -> 999.999.999-99 
* CNPJ -> 99.999.999/9999-99 
* Data -> 99/99/9999 
* Tel Resid -> (99) 9999-9999 
* Tel Cel -> (99) 9999-9999 
* Processo -> 99.999999999/999-99 
* C/C -> 999999-! 
* E por aí vai... 
* onkeypress="return txtBoxFormat(document.Form, 'str_cep', '99.999-999', event);"> 
***/

function txtBoxFormat(objForm, strField, sMask, evtKeyPress) {
      var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

      if(clientNavigator == "IE") { // Internet Explorer
        nTecla = evtKeyPress.keyCode; }
      else if(clientNavigator == "Other") { // Nestcape    	  
        nTecla = evtKeyPress.which;
      }
      sValue = objForm[strField].value;

      // Limpa todos os caracteres de formatação que
      // já estiverem no campo.
	if(nTecla != 0){
     sValue = sValue.toString().replace( "-", "" );
      sValue = sValue.toString().replace( "-", "" );
      sValue = sValue.toString().replace( ".", "" );
      sValue = sValue.toString().replace( ".", "" );
      sValue = sValue.toString().replace( "/", "" );
      sValue = sValue.toString().replace( "/", "" );
      sValue = sValue.toString().replace( "(", "" );
      sValue = sValue.toString().replace( "(", "" );
      sValue = sValue.toString().replace( ")", "" );
      sValue = sValue.toString().replace( ")", "" );
      sValue = sValue.toString().replace( " ", "" );
      sValue = sValue.toString().replace( " ", "" );
	}

      fldLen = sValue.length;
      mskLen = sMask.length;

      i = 0;
      nCount = 0;
      sCod = "";
      mskLen = fldLen;

      while (i <= mskLen) {
        bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
        bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

           	 if (bolMask && nTecla != 8 && nTecla != 0) {
        		 sCod += sMask.charAt(i);
        		 mskLen++; }
        	 else {
        		 sCod += sValue.charAt(nCount);
        		 nCount++;
        	 }

        i++;
      }

      
     objForm[strField].value = sCod;
          if (nTecla != 8 && nTecla != 0) { // backspace
        if (sMask.charAt(i-1) == "9") { // apenas números...
          if ((nTecla > 47) && (nTecla < 58)){ return true;}
          else if ((nTecla >= 96) && (nTecla <= 105)) {return true;}
          else if((nTecla == 9)){return true;}
          else return false;
          } // números de 0 a 9
        else { // qualquer caracter...
         return true;
        } }
      else {
        return true;
      }
    }


//Fim da Função Máscaras Gerais



	
	function seleciona(id, combo){
	    var select = document.getElementById(combo);
	    cont = 0;
	    for(var i = 0; i < select.options.length;i++){
	        if(select.options[i].value == id) {
	            select.options[i].selected = true;
	            cont = 1;
	            break;	 
	        }
	    }
	    if(cont == 0){
	    	//setTimeout(function(){edita();}, 20000);
	    	//alert('Codigo no encontrado!..ID = '+ id + '--- campo = ' + combo);
	    }
	}
	
	function telaExpandida(website) {
		var heightspeed = 50; // velocidade vertical
		var widthspeed = 50;  // velocidade horizontal
		var leftdist = 0;    // distância da margem esquerda
		var topdist = 0;     // distância do topo
		if (document.all) {
			var winwidth = window.screen.availWidth - leftdist;
			var winheight = window.screen.availHeight - topdist;
			var sizer = window.open(website,"","left=" + leftdist + ",top=" + topdist + ",width=1,height=1,scrollbars=yes");
			for (sizeheight = 1; sizeheight < winheight; sizeheight += heightspeed) {
			sizer.resizeTo("1", sizeheight);
		}
		for (sizewidth = 1; sizewidth < winwidth; sizewidth += widthspeed) {
			sizer.resizeTo(sizewidth, sizeheight);
		}
		sizer.location = website;
	}
	else
		window.location = website;
	}
  	
	function telaPequena() {
		//pega a resolução do visitante
		w = (screen.width - 5);
		h = (screen.height - 60);
		altura = 450;
		largura = 720;
		//divide a resolução por 2, obtendo o centro do monitor
		meio_w = w/2;
		meio_h = h/2;
		//diminui o valor da metade da resolução pelo tamanho da janela, fazendo com q ela fique centralizada
		altura2 = altura/2;
		largura2 = largura/2;
		meio1 = meio_h - altura2;
		meio2 = meio_w - largura2;

		//abre a nova janela, já com a sua devida posição
		centro = 'height=' + altura + ', width=' + largura + ', top='+meio1+', left='+meio2 + ',resizable=no,scrollbars=yes,location=no,status=no,directories=no';
		return centro
	}
	
  	function centroDaTela() {
		//pega a resolução do visitante
		w = (screen.width - 5);
		h = (screen.height - 60);
		altura = h;
		largura = w;
		//divide a resolução por 2, obtendo o centro do monitor
		meio_w = w/2;
		meio_h = h/2;
		//diminui o valor da metade da resolução pelo tamanho da janela, fazendo com q ela fique centralizada
		altura2 = altura/2;
		largura2 = largura/2;
		meio1 = meio_h - altura2;
		meio2 = meio_w - largura2;

		//abre a nova janela, já com a sua devida posição
		centro = 'height=' + altura + ', width=' + largura + ', top='+meio1+', left='+meio2 + ',resizable=no,scrollbars=yes,menubar=yes,location=no,directories=no,location=no';
		return centro
	}
 
 

 
 function Verifica_Data(data1, obrigatorio){
 //Se o par?metro obrigat?rio for igual ? zero, significa que elepode estar vazio, caso contr?rio, n?o
  var data = data1.value;
 	var strdata = data1.value;
 	if((obrigatorio == 1) || (obrigatorio == 0 && strdata != "")){
 		//Verifica a quantidade de digitos informada esta correta.
 		if (strdata.length != 10){
 			alert("Formato da data não é válido. Formato correto: - dd/mm/aaaa.");
 			data1.focus();
 			data1.value = "";
 			return false
 		}
 		//Verifica m?scara da data
 		if ("/" != strdata.substr(2,1) || "/" != strdata.substr(5,1)){
 			alert("Formato da data não é válido. Formato correto: - dd/mm/aaaa.");
 			data1.focus();
 			data1.value = "";
 			return false
 		}
 		dia = strdata.substr(0,2)
 		mes = strdata.substr(3,2);
 		ano = strdata.substr(6,4);
 		//Verifica o dia
 		if (isNaN(dia) || dia > 31 || dia < 1){
 			alert("Formato do dia não é válido.");
 			data1.focus();
 			data1.value = "";
 			return false
 		}
 		if (mes == 4 || mes == 6 || mes == 9 || mes == 11){
 			if (dia == "31"){
 				alert("O mês informado não possui 31 dias.");
 				data1.focus();
 				data1.value = "";
 				return false
 			}
 		}
 		if (mes == "02"){
 			bissexto = ano % 4;
 			if (bissexto == 0){
 				if (dia > 29){
 					alert("O mês informado possui somente 29 dias.");
 					data1.focus();
 					data1.value = "";
 					return false
 				}
 			}else{
 				if (dia > 28){
 					alert("O mês informado possui somente 28 dias.");
 					data1.focus();
 					data1.value = "";
 					return false
 				}
 			}
 		}
 	//Verifica o m?s
 		if (isNaN(mes) || mes > 12 || mes < 1){
 			alert("Formato do mês não é válido.");
 			data1.focus();
 			data1.value = "";
 			return false
 		}
 		//Verifica o ano
 		if (isNaN(ano)){
 			alert("Formato do ano não é válido.");
 			data1.focus();
 			data1.value = "";
 			return false
 		}
 	}
 }
 
 function Verifica_Data_Dia_Mes(data1, obrigatorio){
 //Se o par?metro obrigat?rio for igual ? zero, significa que elepode estar vazio, caso contr?rio, n?o
  var data = data1.value;
 	var strdata = data1.value;
 	if((obrigatorio == 1) || (obrigatorio == 0 && strdata != "")){
 		//Verifica a quantidade de digitos informada esta correta.
 		if (strdata.length != 5){
 			alert("Formato da data não é válido. Formato correto: - dd/mm.");
 			data1.focus();
 			return false
 		}
 		//Verifica m?scara da data
 		if ("/" != strdata.substr(2,1)){
 			alert("Formato da data não é válido. Formato correto: - dd/mm.");
 			data1.focus();
 			return false
 		}
 		dia = strdata.substr(0,2)
 		mes = strdata.substr(3,2);
 		ano = strdata.substr(6,4);
 		//Verifica o dia
 		if (isNaN(dia) || dia > 31 || dia < 1){
 			alert("Formato do dia não é válido.");
 			data1.focus();
 			return false
 		}
 		if (mes == 4 || mes == 6 || mes == 9 || mes == 11){
 			if (dia == "31"){
 				alert("O mês informado não possui 31 dias.");
 				data1.focus();
 				return false
 			}
 		}
 		if (mes == "02"){
 			bissexto = ano % 4;
 			if (bissexto == 0){
 				if (dia > 29){
 					alert("O mês informado possui somente 29 dias.");
 					data1.focus();
 					return false
 				}
 			}else{
 				if (dia > 28){
 					alert("O mês informado possui somente 28 dias.");
 					data1.focus();
 					return false
 				}
 			}
 		}
 	//Verifica o m?s
 		if (isNaN(mes) || mes > 12 || mes < 1){
 			alert("Formato do mês não é válido.");
 			data1.focus();
 			return false
 		}
 	}
 }
 
 
 function Compara_Datas(data_inicial, data_final){
 	//Verifica se a data inicial ? maior que a data final
 	var data_inicial = document.getElementById(data_inicial);
 	var data_final   = document.getElementById(data_final);
 	str_data_inicial = data_inicial.value;
 	str_data_final   = data_final.value;
 	dia_inicial      = data_inicial.value.substr(0,2);
 	dia_final        = data_final.value.substr(0,2);
 	mes_inicial      = data_inicial.value.substr(3,2);
 	mes_final        = data_final.value.substr(3,2);
 	ano_inicial      = data_inicial.value.substr(6,4);
 	ano_final        = data_final.value.substr(6,4);
 	if(ano_inicial > ano_final){
 		alert("A data inicial deve ser menor que a data final."); 
 		data_inicial.focus();
 		return false
 	}else{
  	if(ano_inicial == ano_final){
   	if(mes_inicial > mes_final){
    	alert("A data inicial deve ser menor que a data final.");
 				data_final.focus();
 				return false
 			}else{
 				if(mes_inicial == mes_final){
 					if(dia_inicial > dia_final){
 						alert("A data inicial deve ser menor que a data final.");
 						data_final.focus();
 						return false
 					}
 				}
 			}
 		}
 	}
 }
 
 function Verifica_Hora(hora, obrigatorio){
 //Se o par?metro obrigat?rio for igual ? zero, significa que elepode estar vazio, caso contr?rio, n?o
 
 	if((obrigatorio == 1) || (obrigatorio == 0 && hora.value != "")){
 		if(hora.value.length <8 || hora.value.length >8){
 			alert("Formato da hora inválido. Por favor, informe a hora no formato correto: hh:mm:ss");
 			hora.focus();
 			return false;
 		}
 		if(hora.value.substr(0,2) > 23 || isNaN(hora.value.substr(0,2))){
 			alert("Formato da hora inválido.");
 			hora.focus();
 			return false;
 		}
 		if(hora.value.substr(3,2) > 59 || isNaN(hora.value.substr(3,2))){
 			alert("Formato do minuto inválido.");
 			hora.focus();

 			return false;
 		}
 		if(hora.value.substr(6,2) > 59 || isNaN(hora.value.substr(6,2))){
 			alert("Formato do segundo inválido.");
 			hora.focus();
 			return false;
 		}
 	}
 }
 
 function Verifica_Email(email, obrigatorio){
 //Se o par?metro obrigat?rio for igual ? zero, significa que elepode estar vazio, caso contr?rio, n?o
 	if((obrigatorio == 1) || (obrigatorio == 0 && email.value != "")){
 		if(!email.value.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+.[a-zA-Z0-9._-]+)/gi)){
 			alert("Informe um e-mail válido");
 			email.focus();
 			return false
 		}
 	}
 }
 
 function Verifica_Tamanho(campo, tamanho){
 //usado para campos textarea onde n?o se tem o atributo maxlenght
 	if(campo.value.length > tamanho){
 		alert("O campo suporta no máximo " + tamanho + " caracteres.");
 		campo.focus();
 		return false
 	}
 }
 
 function Verifica_Cep(cep, obrigatorio){
 //Se o par?metro obrigat?rio for igual ? zero, significa que elepode estar vazio, caso contr?rio, n?o
 	var strcep = cep.value;
 	if((obrigatorio == 1) || (obrigatorio == 0 && strcep != "")){
 		if (strcep.length != 9){
 			alert("CEP informado inválido.");
 			cep.focus();
 			return false
 		}else{
 			if (strcep.indexOf("-") != 5){
 				alert("Formato de CEP informado inválido.");
 				cep.focus();
 				return false
 			}else{
 				if (isNaN(strcep.replace("-","0"))){
 					alert("CEP informado inválido.");
 					cep.focus();
 					return false
 				}
 			}
 		}
 	}	  
 }
 
 function Bloqueia_Caracteres(evnt){
 //Fun??o permite digita??o de n?meros
 	if (clientNavigator == "IE"){
 		if (evnt.keyCode < 48 || evnt.keyCode > 57){
 			return false
 		}
 	}else{
 		 try{var key = evnt.which   ;      }catch(er){};
 		 if(key == 8 || key == 0){
 			 return true;
 		 }
 		if (key < 48 || key > 57){
 			return false;
 		}
 	}
 }
 
 
 function Ajusta_Data(input, evnt){
 //Ajusta m?scara de Data e s? permite digita??o de n?meros
 	if (input.value.length == 2 || input.value.length == 5){
 		if(clientNavigator == "IE"){
 			input.value += "/";
 		}else{
 			if(evnt.keyCode == 0){
 				input.value += "/";
 			}
 		}
 	}
 //Chama a fun??o Bloqueia_Caracteres para s? permitir a digita??o de n?meros
 	return Bloqueia_Caracteres(evnt);
 }
 
 function Ajusta_Data_Dia_Mes(input, evnt){
 //Ajusta m?scara de Data e s? permite digita??o de n?meros
 	if (input.value.length == 2){
 		if(clientNavigator == "IE"){
 			input.value += "/";
 		}else{
 			if(evnt.keyCode == 0){
 				input.value += "/";
 			}
 		}
 	}
 //Chama a fun??o Bloqueia_Caracteres para s? permitir a digita??o de n?meros
 	return Bloqueia_Caracteres(evnt);
 }
 
 function Ajusta_Hora(input, evnt){
 //Ajusta m?scara de Hora e s? permite digita??o de n?meros
 	if (input.value.length == 2){
 		if(clientNavigator == "IE"){
 			input.value += ":";
 		}else{
 			if(evnt.keyCode == 0){
 				input.value += ":";
 			}
 		}
 	}
 	if (input.value.length == 5){
 		if(clientNavigator == "IE"){
 			input.value += ":00";
 		}else{
 			if(evnt.keyCode == 0){
 				input.value += ":00";
 			}
 		}
 	}
 	
 //Chama a fun??o Bloqueia_Caracteres para s? permitir a digita??o de n?meros
 	return Bloqueia_Caracteres(evnt);
 }
 
 function Ajusta_Cep(input, evnt){
 //Ajusta m?scara de CEP e s? permite digita??o de n?meros
 	if (input.value.length == 5){
 		if(clientNavigator == "IE"){
 			input.value += "-";
 		}else{
 			if(evnt.keyCode == 0){
 				input.value += "-";
 			}
 		}
 	}
 //Chama a fun??o Bloqueia_Caracteres para s? permitir a digita??o de n?meros
 	return Bloqueia_Caracteres(evnt);
 }
 
 function Atualiza_Opener(){
 //Atualiza a p?gina opener da popup que chamar a fun??o
 	window.opener.location.reload();
 }
 
 function fecharTela(evtKeyPress){
	 if(clientNavigator == "IE") { // Internet Explorer
	     nTecla = evtKeyPress.keyCode; 
	 }
	 else if(clientNavigator == "Other") { // Nestcape    	  
	     nTecla = evtKeyPress.which;
	 }
	 if(nTecla == '27'){
		 window.close();
	 }
}

 function SomarData(txtData,DiasAdd)
 {
	 var d = new Date();
	 d.setTime(Date.parse(txtData.split("/").reverse().join("/"))+(86400000*(DiasAdd)))
	 var DataFinal;
	 if(d.getDate() < 10){
		 DataFinal = "0"+d.getDate().toString();
	 }
	 else{
		 DataFinal = d.getDate().toString();
	 }
	 if((d.getMonth()+1) < 10){
		 DataFinal += "/0"+(d.getMonth()+1).toString()+"/"+d.getFullYear().toString();
	 }
	 else{
		 DataFinal += "/"+((d.getMonth()+1).toString())+"/"+d.getFullYear().toString();
	 }
	 return DataFinal;
 }
 
 function dataPorExtenso(campoData){
	 var temp = campoData.substr(3,3) + campoData.substr(0,2)+ campoData.substr(5,8);
	 var Hoje = new Date(temp);
	 Data = Hoje.getDate();
	 Dia = Hoje.getDay();
	 Mes = Hoje.getMonth();
	 Ano = Hoje.getFullYear();
	 if (Data<10) {
		 Data = "0" + Data;
	}
	 if (Ano < 2000) {
		 Ano = "19" + Ano;
	}
	 NomeDia = new Array(7)
	 NomeDia[0] = "Domingo";
	 NomeDia[1] = "Segunda-feira";
	 NomeDia[2] = "Terça-feira";
	 NomeDia[3] = "Quarta-feira";
	 NomeDia[4] = "Quinta-feira";
	 NomeDia[5] = "Sexta-feira";
	 NomeDia[6] = "Sábado";

	 NomeMes = new Array(12);
	 NomeMes[0] = "Janeiro";
	 NomeMes[1] = "Fevereiro";
	 NomeMes[2] = "Março";
	 NomeMes[3] = "Abril";
	 NomeMes[4] = "Maio";
	 NomeMes[5] = "Junho";
	 NomeMes[6] = "Julho";
	 NomeMes[7] = "Agosto";
	 NomeMes[8] = "Setembro";
	 NomeMes[9] = "Outubro";
	 NomeMes[10] = "Novembro";
	 NomeMes[11] = "Dezembro";
	 dataCompleta = NomeDia[Dia] + ", " + Data + " de " + NomeMes[Mes] + " de " + Ano;
	return dataCompleta + "<br><br>";
 }
 
 function aumentaCampo(campo, event){
	 if(event.keyCode == 113){
		 //window.opener.tinyMCE.getInstanceById(campo.id).getBody().innerHTML = "<p style='text-align: left;'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>USO ORAL:</strong></p>\n<ol>\n<li>NOVALGINA GOTAS 2X AO DIA</li>\n<li>DIPIRONA SODICA 1X AO DIA</li>\n</ol>\n<p>&nbsp;</p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>USO NASAL:</strong></p>\n<ol>\n<li>DESUPIRIN GOTAS<strong><br /></strong></li>\n</ol>\n<p>&nbsp;</p>";
		 //window.opener.tinyMCE.activeEditor.setContent(" <p style='text-align: left;'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>USO ORAL:</strong></p>\n<ol>\n<li>NOVALGINA GOTAS 2X AO DIA</li>\n<li>DIPIRONA SODICA 1X AO DIA</li>\n</ol>\n<p>&nbsp;</p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>USO NASAL:</strong></p>\n<ol>\n<li>DESUPIRIN GOTAS<strong><br /></strong></li>\n</ol>\n<p>&nbsp;</p> ");
		 window.open('../pesquisas/pesquisas.jsp?tabela=Banco Frases Insere&campo='+ campo.id,'pesquisa02',telaPequena()).focus;
		 
	 }	
	 if(event.altKey && event.keyCode == 107){
		 
	 }
	 
	 if(event.altKey && event.keyCode == 107){
		 
	 }
	 else if(event.altKey && event.keyCode == 109){
		  
	 }
	 
	 
}
