function ValidaConteudoCampo(intervalo,caracter){ 
//Autor: João Carlos B. Morgado (Advice Netbisiness) 
//Data: 23/10/2001 
//Descrição: Função para barra que seja digitado um conteúdo inválido no campo 
//intervalo = 'A..Z' ou se tiver mais de um, faz-se: 'A..Z;a..z' 
//caracter = '-/@!$' 
//ex.: <input type="text" name="questao1[]" size="1" onkeypress="JavaScript:ValidaConteudoCampo('1..5','NULL');"> 
 var bvalido = false; 
 if(((caracter.toUpperCase) != 'NULL') || (caracter != '')){ 
  if(caracter == "PONTUACAO"){caracter = 'ãáâéêíîõóôúûçÃÁÂÉÊÍÎÕÓÔÚÛÇ ';} 
  for(i=0;i<=(caracter.length);i++){ 
     if((event.keyCode) == (caracter.charCodeAt(i))){ 
      bvalido = true; 
     } 
   } 
 } 
 if(!bvalido){ 
  var Inicio    = ""; 
 var Fim    = ""; 
 var bRetornaFalso  = false; 
 var bEncontrou  = false; 
 var location   = -1; 
 location = intervalo.indexOf(";"); 
 if((location) > -1){ 
   var restricoes = intervalo.split(";"); 
  for(i=0;i<=(restricoes.length-1);i++){ 
   Inicio  = restricoes[i].substring(0,1); 
   Fim  = restricoes[i].substring(3,4); 
    if((event.keyCode >= Inicio.charCodeAt()) && (event.keyCode <= Fim.charCodeAt())){ //48 57 
    bEncontrou = true; 
    i = restricoes.length; 
     } 
  } 
  if(!bEncontrou){ 
   bRetornaFalso = true; 
  } 
 } 
 else if(intervalo.length == 4){ 
  Inicio  = intervalo.substring(0,1); 
  Fim  = intervalo.substring(3,4); 
   if((event.keyCode >= Inicio.charCodeAt()) && (event.keyCode <= Fim.charCodeAt())){ //48 57 
   bEncontrou = true; 
    } 
  if(!bEncontrou){ 
   bRetornaFalso = true; 
  } 
 } 
 if(bRetornaFalso){ 
  event.returnValue = false; 
 } 
} 
} 
 
function ValidaDataFormatoBrasil(data){ 
	/* 
	// original: ha um bug no parseInt de 08 e 09 que dah sempre 0. bacalhau: multiplicar por 1 antes de fazer a conversao. 
	var dia 	 	= parseInt(data.substring(0,2)); 
	var mes 	 	= parseInt(data.substring(3,5)); 
	var ano 	 	= parseInt(data.substring(6,10)); 
	*/ 
 
	var dia 	 	=  data.substring(0,2) * 1; 
	dia = parseInt(dia); 
	var mes 	 	=  data.substring(3,5) * 1; 
	mes = parseInt(mes); 
	var ano 	 	=  data.substring(6,10) * 1; 
    ano = parseInt(ano); 
 
	var barradia 	= data.substring(2,3); 
	var barrames 	= data.substring(5,6); 
	var bErro 		= false; 
	if((barradia == "/") && (barrames == "/")){ 
		if(((dia > 0) && (dia <= 31)) && ((mes > 0) && (mes <= 12))){ 
			if(((dia - dia) == 0) && ((mes - mes) == 0) && ((ano - ano) == 0)){ 
				bErro = false; 
			} 
			else{ 
				bErro = true; 
			} 
		} 
		else{ 
			bErro = true; 
		} 
	} 
	else{ 
		bErro = true; 
	} 
	return (!bErro); 
} 
 
function VerificaCPF(CPF) { 
	if (CPF.length != 11 		|| CPF == "00000000000" 	|| CPF == "11111111111" || 
		CPF == "22222222222" 	||	CPF == "33333333333" 	|| CPF == "44444444444" || 
		CPF == "55555555555" 	|| CPF == "66666666666" 	|| CPF == "77777777777" || 
		CPF == "88888888888" 	|| CPF == "99999999999") 
		return false; 
	soma = 0; 
	for (i=0; i < 9; i ++) 
		soma += parseInt(CPF.charAt(i)) * (10 - i); 
	resto = 11 - (soma % 11); 
	if (resto == 10 || resto == 11) 
		resto = 0; 
	if (resto != parseInt(CPF.charAt(9))) 
		return false; 
	soma = 0; 
	for (i = 0; i < 10; i ++) 
		soma += parseInt(CPF.charAt(i)) * (11 - i); 
	resto = 11 - (soma % 11); 
	if (resto == 10 || resto == 11) 
		resto = 0; 
	if (resto != parseInt(CPF.charAt(10))) 
		return false; 
	return true; 
 } 
 
function ZeroToPlic(aux){ 
//Autor: João Carlos B. Morgado (Advice Netbisiness) 
//Data: 23/10/2001 
//Descrição: Função para transformar zero em "" 
	if ((aux == "0") || (aux == 0)){ 
		return ""; 
	} 
	else{ 
		return aux; 
	} 
} 
 
function isNull(campo){ 
/* Função que verifica se um campo está vazio pegando inclusive espaço em branco */ 
	strAux = ""; 
	strAux = campo.split(" "); 
	strAux = strAux.join(""); 
	if (strAux == ''){ 
		return true; 
		} 
	else{ 
		return false; 
		} 
	} 
	 
function vogalAcentuada(s) 
/* Função que verifica se tem alguma vogal acentuada na string */ 
	{ 
    	ls = s.toLowerCase(); 
        if ((ls.indexOf("á")>=0) || (ls.indexOf("à")>=0) || (ls.indexOf("ã")>=0) || (ls.indexOf("â")>=0) || (ls.indexOf("é")>=0) || (ls.indexOf("í")>=0) || (ls.indexOf("ó")>=0) || (ls.indexOf("õ")>=0) || (ls.indexOf("ô")>=0) || (ls.indexOf("ú")>=0) || (ls.indexOf("ü")>=0)) 
        	return true; 
   	} 
 
function checkmail(email) 
/* Função que verifica se um e-mail está correto ou não */ 
   { 
           var s = new String(email); 
           // { } ( ) < > [ ] | \ / 
           if ((s.indexOf("{")>=0) || (s.indexOf("}")>=0) || (s.indexOf("(")>=0) || (s.indexOf(")")>=0) || (s.indexOf("<")>=0) || (s.indexOf(">")>=0) || (s.indexOf("[")>=0) || (s.indexOf("]")>=0) || (s.indexOf("|")>=0) || (s.indexOf("\"")>=0) || (s.indexOf("/")>=0) ) 
                  return false; 
           if (vogalAcentuada(email)) 
                  return false; 
           // & * $ % ? ! ^ ~ ` ' " 
           if ((s.indexOf("&")>=0) || (s.indexOf("*")>=0) || (s.indexOf("$")>=0) || (s.indexOf("%")>=0) || (s.indexOf("?")>=0) || (s.indexOf("!")>=0) || (s.indexOf("^")>=0) || (s.indexOf("~")>=0) || (s.indexOf("`")>=0) || (s.indexOf("'")>=0) ) 
                  return false; 
           // , ; : = # 
           if ((s.indexOf(",")>=0) || (s.indexOf(";")>=0) || (s.indexOf(":")>=0) || (s.indexOf("=")>=0) || (s.indexOf("#")>=0) ) 
                  return false; 
           // procura se existe apenas um @ 
           if ( (s.indexOf("@") < 0) || (s.indexOf("@") != s.lastIndexOf("@")) ) {
                  return false; 
           }
           else{
           	indice_tmp = s.indexOf("@");
           	proximo_char = email.charAt(indice_tmp + 1);
           	if (proximo_char == "." ){
           		return false;
           	}           	
           }
           // verifica se tem pelo menos um ponto após o @ 
           if (s.lastIndexOf(".") < s.indexOf("@")) 
                  return false; 
           return true; 
   } 
 
function PermiteSomenteNumero(){ 
	if(event.keyCode < 48 || event.keyCode > 57){ 
		event.returnValue = false; 
	} 
} 
 
function PermiteSomenteNumeroMaisChar(caracter){ 
	var bvalido = false; 
	if(((caracter.toUpperCase) != 'NULL') || (caracter != '')){ 
		for(i=0;i<=(caracter.length);i++){ 
			if((event.keyCode) == (caracter.charCodeAt(i))){ 
				bvalido = true; 
			} 
		} 
	} 
	if(!bvalido){ 
		if(event.keyCode < 48 || event.keyCode > 57){ 
			event.returnValue = false; 
		} 
	} 
} 
 
function isANumber(number){ 
/* Função que verifica de o valor passado para o parâmetro "number" é um número ou não (Float) */ 
	var answer = true; 
    for (var i=0; i<number.length; i++){ 
    	if (!parseFloat(number.charAt(i))){ 
	    	if(number.charAt(i) != '0'){ 
            	answer = false; 
                break; 
            } 
        } 
    } 
    return answer; 
} 
 
function getRadioValue(r){ 
/* Função que pega o valor de um radiobutton */ 
   val = ""; 
   for(i=0; i<r.length;i++) { 
       if(r[i].checked == true) { 
         val = r[i].value; 
         break; 
       } 
   } 
   return val; 
} 
 
function formatadiames(num){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 21/08/2001 
//Descrição: Esta função tem como objetivo formatar dia e mês colocando um 0 à esquerda. 
	var sAux = ""; 
	if(parseInt(num) < 10){ 
		sAux = "0" + num; 
	} 
	else{ 
		sAux = num; 
	} 
	return sAux; 
} 
 
function datamenorhoje(datacomp){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 21/08/2001 
//Descrição: Esta função tem como objetivo comparar uma data no formato aa/dd/mmmm com a data atual e retornar se a data é menor, igual, ou maior. 
	var data 	= 	new Date(); 
	var dia		=	formatadiames(data.getDate()); 
	var mes		=	formatadiames(data.getMonth()); 
	var ano		=	data.getYear(); 
	 
	if ((datacomp.indexOf("/")>0) && (datacomp.length == 10)){ 
		var dataCompVet = datacomp.split("/"); 
		 
		if (dataCompVet[2]>=ano){ 
			if ((dataCompVet[0]<dia) && (dataCompVet[1]<mes)){ 
				return "sim"; 
			} 
			else if ((dataCompVet[0]=dia) && (dataCompVet[1]=mes)){ 
				return "igual"; 
			} 
			else if ((dataCompVet[0]>dia) && (dataCompVet[1]>mes)){ 
				return "maior"; 
			} 
		} 
		else{ 
			return "sim"; 
		} 
	} 
	else{ 
		return "erro"; 
	}	 
} 
 
function incluirpergunta(area,secao,subnivel){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 07/08/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	if(isNull(document.frmenquete.pergunta.value)){ 
		alert("Falta preencher o campo pergunta."); 
		document.frmenquete.pergunta.focus(); 
		return; 
	} 
	if(!isNull(document.frmenquete.dtlimite.value)){ 
		if(datamenorhoje(document.frmenquete.dtlimite.value) == "erro"){ 
			alert("Por favor, preencha corretamente o campo data limite."); 
			document.frmenquete.dtlimite.focus(); 
			return; 
		} 
		else if(datamenorhoje(document.frmenquete.dtlimite.value) == "sim"){ 
			alert("A data limite não pode ser menor ou igual a data atual."); 
			document.frmenquete.dtlimite.focus(); 
			return; 
		} 
	} 
 
	document.frmenquete.action = "enqueteincluisalva.php"; 
	document.frmenquete.area.value = ZeroToPlic(area); 
	document.frmenquete.secao.value = ZeroToPlic(secao); 
	document.frmenquete.subnivel.value = ZeroToPlic(subnivel); 
	document.frmenquete.submit(); 
} 
 
function alterarpergunta(id,area,secao,subnivel){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 07/08/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	if(isNull(document.frmenquete.pergunta.value)){ 
		alert("Falta preencher o campo pergunta."); 
		document.frmenquete.pergunta.focus(); 
		return; 
	} 
	if(!isNull(document.frmenquete.dtlimite.value)){ 
		if(datamenorhoje(document.frmenquete.dtlimite.value) == "erro"){ 
			alert("Por favor, preencha corretamente o campo data limite."); 
			document.frmenquete.dtlimite.focus(); 
			return; 
		} 
		else if(datamenorhoje(document.frmenquete.dtlimite.value) == "sim"){ 
			alert("A data limite não pode ser menor ou igual a data atual."); 
			document.frmenquete.dtlimite.focus(); 
			return; 
		} 
	} 
 
	document.frmenquete.action = "enquetealterasalva.php"; 
	document.frmenquete.idpergunta.value = id; 
	document.frmenquete.area.value = ZeroToPlic(area); 
	document.frmenquete.secao.value = ZeroToPlic(secao); 
	document.frmenquete.subnivel.value = ZeroToPlic(subnivel); 
	document.frmenquete.submit(); 
} 
 
function alterartemplate(){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 24/10/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	document.frmenquetetemplate.action = "enquetealterasalva.php?acao=tmp"; 
	document.frmenquetetemplate.submit(); 
} 
 
function incluirresposta(area,secao,subnivel){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 07/08/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	if(isNull(document.frmenquete.resposta.value)){ 
		alert("Falta preencher o campo resposta."); 
		document.frmenquete.resposta.focus(); 
		return; 
	} 
	 
	document.frmenquete.action = "respostaincluisalva.php"; 
	document.frmenquete.area.value = ZeroToPlic(area); 
	document.frmenquete.secao.value = ZeroToPlic(secao); 
	document.frmenquete.subnivel.value = ZeroToPlic(subnivel); 
	document.frmenquete.submit(); 
} 
 
function alterarresposta(id,area,secao,subnivel){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 07/08/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	if(isNull(document.frmenquete.resposta.value)){ 
		alert("Falta preencher o campo resposta."); 
		document.frmenquete.resposta.focus(); 
		return; 
	} 
	 
	document.frmenquete.action = "respostaalterasalva.php"; 
	document.frmenquete.idresposta.value = id; 
	document.frmenquete.area.value = ZeroToPlic(area); 
	document.frmenquete.secao.value = ZeroToPlic(secao); 
	document.frmenquete.subnivel.value = ZeroToPlic(subnivel); 
	document.frmenquete.submit(); 
} 
 
function clearformok(id){ 
	if(id == "C"){ 
		document.frmenquete.form_ok_path_img.value = ""; 
		document.frmenquete.form_ok_path_img.disabled = true; 
		document.frmenquete.form_ok_label.disabled = false; 
		document.frmenquete.form_ok_css.disabled = false;		 
	} 
	else if(id == "I"){ 
		document.frmenquete.form_ok_label.value = ""; 
		document.frmenquete.form_ok_css.value = ""; 
		document.frmenquete.form_ok_label.disabled = true; 
		document.frmenquete.form_ok_css.disabled = true; 
		document.frmenquete.form_ok_path_img.disabled = false;		 
	} 
} 
 
function clearformresult(id){ 
	if(id == "C"){ 
		document.frmenquete.form_result_path_img.value = ""; 
		document.frmenquete.form_result_path_img.disabled = true; 
		document.frmenquete.form_result_label.disabled = false; 
		document.frmenquete.form_result_css.disabled = false;		 
	} 
	else if(id == "I"){ 
		document.frmenquete.form_result_label.value = ""; 
		document.frmenquete.form_result_css.value = ""; 
		document.frmenquete.form_result_label.disabled = true; 
		document.frmenquete.form_result_css.disabled = true; 
		document.frmenquete.form_result_path_img.disabled = false;		 
	} 
} 
 
function alterarconfig(id){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 08/08/2001 
//Descrição: Esta função tem como objetivo dar um submit no form caso o mesmo esteja correto. 
	if (getRadioValue(document.frmenquete.form_ok_button) == "I"){ 
		if(isNull(document.frmenquete.form_ok_path_img.value)){ 
			alert("Informe o path da gif do botão [ok].") 
			document.frmenquete.form_ok_path_img.focus(); 
			return; 
		}		 
	} 
	if (getRadioValue(document.frmenquete.form_result_button) == "I"){ 
		if(isNull(document.frmenquete.form_result_path_img.value)){ 
			alert("Informe o path da gif do botão [resultado].") 
			document.frmenquete.form_result_path_img.focus(); 
			return; 
		}		 
	} 
	if (isNull(document.frmenquete.form_template_externo_enquete.value)){ 
		document.frmenquete.fg_template_externo.checked = false; 
	} 
	 
	document.frmenquete.action = "configalterasalva.php"; 
	document.frmenquete.idpergunta.value = id; 
	document.frmenquete.submit(); 
} 
 
 
function openwindow(pagina,largura,altura){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 13/08/2001 
//Descrição: Esta função tem como objetivo abrir um poupap 
	var idp  = ""; 
	var idr  = ""; 
	var acao = ""; 
	var url  = pagina; 
	var bOk = false;  
	 
	if ((pagina == "sistema/enquete/votar_enquete.php") || (pagina == "sistema/enquete/resultado_enquete.php")){ 
		idp = document.enquete.idp.value; 
		idr = getRadioValue(document.enquete.idr); 
		front_mostrada = document.enquete.front_mostrada.value; 
		if (pagina == "sistema/enquete/votar_enquete.php"){ 
			for(i=0; i<document.enquete.elements.length; i++){  
				if (document.enquete.elements[i].type == 'radio'){ 
					if(document.enquete.elements[i].checked == true){ 
						bOk = true; 
					}  
				}  
			}  
			if (!bOk){  
				alert("Falta selecionar uma das respostas.");  
				return;  
			}  
			else{  
	 
				url = ""; 
				url = pagina + "?idp=" + idp + "&idr=" + idr + "&front_mostrada=" + front_mostrada; 
			}  
		} 
		else if (pagina == "sistema/enquete/resultado_enquete.php"){ 
			url = ""; 
			url = pagina + "?idp=" + idp + "&front_mostrada=" + front_mostrada; 
		} 
	} 
	 
	window.open(url,"","width=" + largura + ",height=" + altura + ",toolbar=0,status=0,menubar=0,scrollbars=0,directories=0"); 
} 
 
function showhelp(url){ 
//Autor: João Carlos B. Morgado (Advice Netbusiness) 
//Data: 13/08/2001 
//Descrição: Esta função tem como objetivo abrir um poupap 
	var largura = "330"; 
	var altura  = "330"; 
	  
	window.open(url,"","width=" + largura + ",height=" + altura + ",toolbar=0,status=0,menubar=0,scrollbars=1"); 
	 
} 
 
function AbreWindow(pagina,largura,altura){ 
	window.open(pagina,"Imagen","width=" + largura + ",height=" + altura + ",toolbar=0,status=0,menubar=0,scrollbars=1,directories=0"); 
} 
 
function ValidaConteudoCampo(intervalo,caracter) { 
	var bvalido = false; 
	if(((caracter.toUpperCase) != 'NULL') || (caracter != '')){ 
		if(caracter == "PONTUACAO"){caracter = 'ãáâéêíîõóôúûçÃÁÂÉÊÍÎÕÓÔÚÛÇ ';} 
			for(i=0;i<=(caracter.length);i++){ 
				if((event.keyCode) == (caracter.charCodeAt(i))){ 
					bvalido = true; 
				} 
			} 
		} 
		if(!bvalido){ 
			var Inicio    = ""; 
			var Fim    = ""; 
			var bRetornaFalso  = false; 
			var bEncontrou  = false; 
			var location   = -1; 
			location = intervalo.indexOf(";"); 
			if((location) > -1){ 
				var restricoes = intervalo.split(";"); 
				for(i=0;i<=(restricoes.length-1);i++){ 
					Inicio  = restricoes[i].substring(0,1); 
					Fim  = restricoes[i].substring(3,4); 
					if((event.keyCode >= Inicio.charCodeAt()) && (event.keyCode <= Fim.charCodeAt())){ //48 57 
						bEncontrou = true; 
						i = restricoes.length; 
					} 
				} 
				if(!bEncontrou){ 
					bRetornaFalso = true; 
				} 
			} 
		else if(intervalo.length == 4){ 
			Inicio  = intervalo.substring(0,1); 
			Fim  = intervalo.substring(3,4); 
			if((event.keyCode >= Inicio.charCodeAt()) && (event.keyCode <= Fim.charCodeAt())){ //48 57 
				bEncontrou = true; 
			} 
			if(!bEncontrou){ 
				bRetornaFalso = true; 
			} 
		} 
		if(bRetornaFalso){ 
			event.returnValue = false; 
		}  
	} 
} 
