/*
funcoes/comuns.js

Funcoes comuns de javascript
*/

//==============================================================================================
//Abaixo, três funções para mostrar um relógio na barra de status
var timerID = null;
var timerRunning = false;

function stopclock (){
        if(timerRunning)
                clearTimeout(timerID);
        timerRunning = false;
}

function showtime() {
        var now = new Date();
        var hours = now.getHours();
        var minutes = now.getMinutes();
        var seconds = now.getSeconds()
        var timeValue = "" + ((hours >12) ? hours -12 :hours)
        timeValue += ((minutes < 10) ? ":0" : ":") + minutes
        timeValue += ((seconds < 10) ? ":0" : ":") + seconds
        timeValue += (hours >= 12) ? " PM" : " AM"

        window.status = timeValue;

        timerID = setTimeout("showtime()",1000);
        timerRunning = true;
}

function startclock () {
        stopclock();
        showtime();
}
//Aqui finaliza as três funções para mostrar um relógio na barra de status
//==============================================================================================

//Função para abrir uma nova página em popup. Usar da seguinte maneira:
//javascript:na_open_window('_blank', 'nomeDaPagina.php', 410, 170, 250, 140, 0, 0, 0, 0, 0)
function na_open_window(name, url, left, top, width, height, toolbar, menubar, statusbar, scrollbar, resizable)
{
// Parâmetros:
// name - identificador da janela
// url - endereco da pagina que sera aberta
// left - canto esquerdo da janela
// top - canto superior da janela
// width - largura da janela
// height - altura da janela
// toolbar - exibe barra de ferramentas do browser (1-sim; 0-nao)
// menubar - exibe o menu do browser (1-sim; 0-nao)
// statusbar - exibe a barra de status do browser (1-sim; 0-nao)
// scrollbar - exibe barras de rolagem no browser (1-sim; 0-nao)
// resizable - permite que o tamanho da janela seja alterado (1-sim; 0-nao)
toolbar_str = toolbar ? 'yes' : 'no';
menubar_str = menubar ? 'yes' : 'no';
statusbar_str = statusbar ? 'yes' : 'no';
scrollbar_str = scrollbar ? 'yes' : 'no';
resizable_str = resizable ? 'yes' : 'no';
// Manter o comando abaixo na mesma linha
window.open(url, name, 'left='+left+',top='+top+',width='+width+',height='+height+',toolbar='+toolbar_str+',menubar='+menubar_str+',status='+statusbar_str+',scrollbars='+scrollbar_str+',resizable='+resizable_str);
}

//==============================================================================================

//função para validação de e-mail
function valida_email()
{
  <!--
  if (document.form.email.value.indexOf('@', 0) == -1 || 
  document.form.email.value.indexOf('.', 0) == -1)
  {
    alert("E-mail invalido!");
    document.form.email.focus();
    document.form.email.value="";
	return false 
  }
}

//==============================================================================================

// Função para formatação de qualquer tipo de campo (telefone, cpf, cep, cgc ...)
// usar: ## => para representar números separados poor "." , "-" , "/" , etc... 
function formatar(src, mask) 
{
  var i = src.value.length;
  var saida = mask.substring(0,1);
  var texto = mask.substring(i)
if (texto.substring(0,1) != saida) 
  {
	src.value += texto.substring(0,1);
  }
}
//==============================================================================================

//Funções para tabelas escondidas
//Função para mostrar a tabela escondida de Endereços, no cadastro de alunos
function mostraEnderecos() {
    document.getElementById('enderecos').style.top = 200;
    document.getElementById('enderecos').style.left = 180;
    document.getElementById('enderecos').style.display = "inline";
}

//Função para mostrar a tabela escondida de Contatos, no cadastro de alunos
function mostraContatos() {
    document.getElementById('contatos').style.top = 200;
    document.getElementById('contatos').style.left = 180;
    document.getElementById('contatos').style.display = "inline";
}
//Função para mostrar a tabela escondida de documentos, no cadastro de alunos
function mostraDocumentos() {
    document.getElementById('documentos').style.top = 200;
    document.getElementById('documentos').style.left = 180;
    document.getElementById('documentos').style.display = "inline";
}

//Função para esconder novamente as tabelas escondidas
function cancelar(){
  document.getElementById('enderecos').style.display = "none";	//tabela de endereços
  document.getElementById('contatos').style.display = "none";	//tabela de contatos
  document.getElementById('documentos').style.display = "none";	//tabela de documentos
}

//abaixo, três funções que servem para impedir que um usuário tente fazer consulta com mais de um valor
//na página  "interno.php?v_menu=cliente", onde é permitido consultar apenas por 
//Sucursal, CPF ou Nome
function pesqSucursal(){
		window.document.form.CPF.value="";
		window.document.form.Nome.value="";
}
function pesqCpf(){
		window.document.form.Sucursal.value="";
		window.document.form.Nome.value="";
}

function pesqNome(){
		window.document.form.CPF.value="";
		window.document.form.Sucursal.value="";
}

//função para obrigar o usuário a digitar ao menos um campo para pesquisa
function verificaValor(){

var cpf = window.document.form.CPF.value
var matricula = window.document.form.Sucursal.value
var nome = window.document.form.Nome.value

if ((cpf=="") && (sucursal=="") && (nome==""))

  {
    alert("Informe ao menos um campo para a Pesquisa!");
    window.document.form.CPF.focus();
	return false
  }
}
//UTILIZAR FUNÇÃO ABAIXO PARA FORMULÁRIOS QUE POSSUIREM O CAMPO SENHA
//===================================================================
function validaForm(form){
	if (document.form._senha.value != document.form._senha2.value)
	   {
		alert("As senhas digitadas não são iguais!");
		document.form._senha.value = "";
		document.form._senha2.value = "";
		document.form._senha.focus();
		return false;
	   }
	for (i=0;i<window.document.form.length;i++){
		var obg = window.document.form[i].id.indexOf("*");
		if (obg!=-1){
			if (window.document.form[i].value == ""){
				var nome = window.document.form[i].id.substring(1,window.document.form[i].id.length);
				alert("O campo " + nome + " é obrigatório.")
				window.document.form[i].focus();
				return false
			}
		}
	}
	return true
}

//UTILIZAR FUNÇÃO ABAIXO PARA FORMULÁRIOS QUE NÃO POSSUIREM O CAMPO SENHA
//=======================================================================
function validaForm1(form){
	for (i=0;i<window.document.form.length;i++){
		var obg = window.document.form[i].id.indexOf("*");
		if (obg!=-1){
			if (window.document.form[i].value == ""){
				var nome = window.document.form[i].id.substring(1,window.document.form[i].id.length);
				alert("O campo " + nome.toUpperCase() + " é obrigatório.")
				window.document.form[i].focus();
				return false
			}
		}
	}
		if ( window.document.form.senha.value != window.document.form.senha2.value )
	   {
		alert("As senhas digitadas não são iguais!");
		window.document.form.senha.value = "";
		window.document.form.senha2.value = "";
		window.document.form.senha.focus();
		return false;
	   }
	return true
}

//ATIVA/DESATIVA CAMPOS
//===================================================================
function check1()
{
   if (document.form1.check.checked == true) // se for ticado, desativa
   {
      document.form1.nome.disabled = true;
      document.form1.profissao.disabled = true;
      document.form1.sexo.disabled = true;
      document.form1.dataNascimento.disabled = true;
      document.form1.nacionalidade.disabled = true;
      document.form1.estadoCivil.disabled = true;
      document.form1.identidade.disabled = true;
      document.form1.cpf.disabled = true;
      document.form1.logradouro.disabled = true;
      document.form1.numero.disabled = true;
      document.form1.complemento.disabled = true;
      document.form1.bairro.disabled = true;
      document.form1.cidade.disabled = true;
      document.form1.uf.disabled = true;
      document.form1.cep.disabled = true;
      document.form1.ddd.disabled = true;
      document.form1.telefone.disabled = true;
      document.form1.telefone2.disabled = true;
      document.form1.celular.disabled = true;
      document.form1.Email.disabled = true;
      document.form1.observacoes.disabled = true;
   }
   else
   {
      document.form1.nome.disabled = false;
      document.form1.profissao.disabled = false;
      document.form1.sexo.disabled = false;
      document.form1.dataNascimento.disabled = false;
      document.form1.nacionalidade.disabled = false;
      document.form1.estadoCivil.disabled = false;
      document.form1.identidade.disabled = false;
      document.form1.cpf.disabled = false;
      document.form1.logradouro.disabled = false;
      document.form1.numero.disabled = false;
      document.form1.complemento.disabled = false;
      document.form1.bairro.disabled = false;
      document.form1.cidade.disabled = false;
      document.form1.uf.disabled = false;
      document.form1.cep.disabled = false;
      document.form1.ddd.disabled = false;
      document.form1.telefone.disabled = false;
      document.form1.telefone2.disabled = false;
      document.form1.celular.disabled = false;
      document.form1.Email.disabled = false;
      document.form1.observacoes.disabled = false;
   }
}

//FUNÇÃO PARA VERIFICAR A OBRIGATORIEDADE DO CAMPO SENHA
//======================================================
function senha()
{
   if (document.form.senha.value == "")
   {
		alert("É necessário digitar uma senha!");
		document.form.senha.value = "";
		document.form.senha2.value = "";
		document.form.senha.focus();
		return false;
   }
   if (document.form.senha.value != document.form.senha2.value)
   {
		alert("As senhas digitadas não são iguais!");
		document.form.senha.value = "";
		document.form.senha2.value = "";
		document.form.senha.focus();
		return false;
   }
}

//FUNÇÕES PARA CONSULTA DE CEP NOS CORREIOS
//=========================================
    function CriticaCampos()
    {
    if (document.Geral.Localidade.value == "")
    {
    alert("Informe o nome completo da Cidade/Município/Distrito/Povoado. Para o DF poderá ser informado o nome da Região Administrativa (Lago Sul, Lago Norte, Cruzeiro, Taguatinga, etc) !!");
    document.Geral.Localidade.focus();
    return (false);
    } 
    else
    { 
    var Branco = " ";
    var Posic, Carac;
    var Temp = document.Geral.Localidade.value.length;    
    var Cont = 0;
    for (var i=0; i < Temp; i++)   
    {  
    Carac =  document.Geral.Localidade.value.charAt (i);
    Posic  = Branco.indexOf (Carac);   
    if (Posic == -1)   
    Cont++;      
    }   
    if (Cont <= 0)
    {
    alert("Informe o nome completo da Cidade/Município/Distrito/Povoado. Para o DF poderá ser informado o nome da Região Administrativa (Lago Sul, Lago Norte, Cruzeiro, Taguatinga, etc) !!");
    document.Geral.Localidade.focus();
    return (false);
    }   
    }
    if (document.Geral.Logradouro.value == "")
    {
    alert("Informe o nome do logradouro");
    document.Geral.Logradouro.focus();
    return (false);
    }  
    else
    { 
    var Branco = " ";
    var Posic, Carac;
    var Temp = document.Geral.Logradouro.value.length;    
    var Cont = 0;
    for (var i=0; i < Temp; i++)   
    {  
    Carac =  document.Geral.Logradouro.value.charAt (i);
    Posic  = Branco.indexOf (Carac);   
    if (Posic == -1)   
    Cont++;      
    }   
    if (Cont <= 0)
    {
    alert("Informe o nome do logradouro");
    document.Geral.Logradouro.focus();
    return (false);
    }  
    }
    } 
    function AjudaLogradouro()
    {   
       DocRemote = window.open ('http://www.correios.com.br/servicos/cep/ajuda_cep_loc_log.htm','Logradouro','scrollbars,resizable,width=300,height=400');
    } 
	
//Início validaCheckbox(v) ===================================================================	
//Função para verificar se pelo menos um checkbox esta selecionado.
function validaCheckbox(v){
    todos = document.getElementsByTagName('input');
    for(x = 0; x < todos.length; x++) {
        if(todos[x].checked) {r
            return true;
        }
    }
    alert("Selecione pelo menos um item!");
    return false;
}
//Final validaCheckbox(v) ===================================================================	

//Início selecionaTodos(form) ===================================================================	
//Função para marcar ou desmarcar todos os checkboxes.
function selecionaTodos(form) {
   for(var i=0; i<form.elements.length; i++) {
      if(form.elements[i].type == 'checkbox') {
         form.elements[i].click()
      }
   }
}
//Final selecionaTodos(form)===================================================================

//função para validar CPF
// PAra chamar a função, utilizar este comando: onBlur="Verifica_campo_CPF(this)"
function Verifica_campo_CPF(campo) {
//QUESTAO DA BANCA!!!!!!!!!!!!!!!!!!!!!!!
/*
if ((tmp == '000.000.000-00') || (tmp == '111.111.111-11') || (tmp == '222.222.222-22') || 
    (tmp == '333.333.333-33') || (tmp == '444.444.444-44') || (tmp == '555.555.555-55') ||
	(tmp == '666.666.666-66') || (tmp == '777.777.777-77') || (tmp == '888.888.888-88') ||
	(tmp == '999.999.999-99')){
       alert('CPF inválido');
       campo.value = '';
       campo.focus();
       return false;		
} 
*/

//var CPF = document.form._CPF.value; // Recebe o valor digitado no campo
var CPF_AUX = campo.value; // Recebe o valor digitado no campo
var CPF = CPF_AUX.substr(0, 3) + CPF_AUX.substr(4, 3) + CPF_AUX.substr(8, 3) + CPF_AUX.substr(12,2);

// Aqui começa a checagem do CPF
var POSICAO, I, SOMA, DV, DV_INFORMADO;
var DIGITO = new Array(10);
DV_INFORMADO = CPF.substr(9, 2); // Retira os dois últimos dígitos do número informado

// Desemembra o número do CPF na array DIGITO
for (I=0; I<=8; I++) {
  DIGITO[I] = CPF.substr( I, 1);
}

// Calcula o valor do 10º dígito da verificação
POSICAO = 10;
SOMA = 0;
   for (I=0; I<=8; I++) {
      SOMA = SOMA + DIGITO[I] * POSICAO;
      POSICAO = POSICAO - 1;
   }
DIGITO[9] = SOMA % 11;
   if (DIGITO[9] < 2) {
        DIGITO[9] = 0;
}
   else{
       DIGITO[9] = 11 - DIGITO[9];
}

// Calcula o valor do 11º dígito da verificação
POSICAO = 11;
SOMA = 0;
   for (I=0; I<=9; I++) {
      SOMA = SOMA + DIGITO[I] * POSICAO;
      POSICAO = POSICAO - 1;
   }
DIGITO[10] = SOMA % 11;
   if (DIGITO[10] < 2) {
        DIGITO[10] = 0;
   }
   else {
        DIGITO[10] = 11 - DIGITO[10];
   }

// Verifica se os valores dos dígitos verificadores conferem
DV = DIGITO[9] * 10 + DIGITO[10];
   if (DV != DV_INFORMADO) {
      alert('CPF inválido');
      campo.value = '';
      campo.focus();
      return false;
   }
	 return true; 
}
	
	
function campoBranco(){

//var nome = window.document.form.Nome.value

if (window.document.form.Nome.value=="") 

  {
    alert("Informe ao menos um nome para a Pesquisa!");
    window.document.form.nome.focus();
	return false;
  }
}