////////////////////////////////////////
  function ValidaCNPJ(NroCNPJ) 
  {

    NroCNPJ = replace(NroCNPJ,"/","");
    NroCNPJ = replace(NroCNPJ,".","");
    NroCNPJ = replace(NroCNPJ,"-","");

    var dig1=0;
    var dig2=0;
    var x;
    var Mult1 = '543298765432';
    var Mult2 = '6543298765432';

    for(x=0; x<=11; x++) 
    {
      dig1 = dig1 +(parseInt(NroCNPJ.slice(x,x+1)) * parseInt(Mult1.slice(x,x+1)) ) ;
    }
    for(x=0; x<=12; x++) 
    {
      dig2 = dig2 + (parseInt(NroCNPJ.slice(x, x+1)) * parseInt(Mult2.slice(x,x+1)) );
    }


    dig1 = (dig1 * 10)%11;
    dig2 = (dig2 * 10)%11;

    if (dig1 == 10) {dig1 = 0;}
    if (dig2 == 10) {dig2 = 0;}

    if (dig1 != parseInt(NroCNPJ.slice(12, 13))) 
    {
      return false;
    } 
    else 
    {
      if (dig2 != parseInt(NroCNPJ.slice(13, 14))) 
      {
        return false;
      } 
      else 
      {
        return true;
      }
    }
  }
//////////////////////////////////////// 

function ValidaCPF(CPF)
  {
    dig_1 = 0;
    dig_2 = 0;
    controle_1 = 10;
    controle_2 = 11;
    lsucesso = 1;
    numero = CPF;
    if (
         numero == "000000000-00" ||
         numero == "111111111-11" ||
         numero == "222222222-22" ||
         numero == "333333333-33" ||
         numero == "444444444-44" ||
         numero == "555555555-55" ||
         numero == "666666666-66" ||
         numero == "777777777-77" ||
         numero == "888888888-88" ||
         numero == "99999999-99" 
        )
    {
      return false;
    }    
    if ((numero.length != 12) || (numero.substring(9, 10) != "-"))
    {
      return false;
    }
    else
    {
      for (i=0 ; i < 9 ; i++)
      {
        dig_1 = dig_1 + parseInt(numero.substring(i, i+1) * controle_1);
        controle_1 = controle_1 - 1;
      }
      resto = dig_1 % 11;
      dig_1 = 11 - resto;
      if ((resto == 0) || (resto == 1))
        dig_1 = 0;
      for ( i=0 ; i < 9 ; i++)
      {
        dig_2 = dig_2 + parseInt(numero.substring(i, i + 1) * controle_2);
        controle_2 = controle_2 - 1;
      }
      dig_2 = dig_2 + 2 * dig_1;
      resto = dig_2 % 11;
      dig_2 = 11 - resto;

      if ((resto == 0) || (resto == 1))
        dig_2 = 0;

      dig_ver = (dig_1 * 10) + dig_2;

      if (dig_ver != parseFloat(numero.substring(numero.length-2,numero.length)))
      {
        return false;
      }
    }
    return true;
  }
////////////////////////////////////////////
  function GM_Verifica_Data(vAno, vMes, vDia)
  {
	  vOk = false;
	  //Cria uma data
	  if (isInteger(vMes))
	  {
	    vMes = parseInt(vMes,10);
	  }
	  if (isInteger(vDia))
	  {
	    vDia = parseInt(vDia,10);
	  }
		vData = new Date(vAno, vMes-1, vDia);
		//Verifica se a data criada é a mesma que foi digitada
		vDia1 = vData.getDate();
		vMes1 = vData.getMonth();
		vAno1 = vData.getFullYear();  
    vOk = isDate(vAno,vMes,vDia) && (vDia == vDia1) && ((vMes -1) == vMes1) && (vAno == vAno1);	
    return vOk;
  }

////////////////////////////////////////////  
function controla_doacao(){
	lista_erro = "";
	ok_dia = "";
	ok_mes = "";
	ok_ano = "";
	
	if(!document.formulario.aceite.checked){
		lista_erro = lista_erro + "É preciso aceitar a contribuição!\n";
	}	
	
	if(document.formulario.nome.value == ""){
		lista_erro = lista_erro + "O campo 'Nome' está em branco!\n";
	}
	
	if(document.formulario.endereco.value == ""){
		lista_erro = lista_erro + "O campo 'Endereço' está em branco!\n";
	}
	
	if(document.formulario.numero.value == ""){
		lista_erro = lista_erro + "O campo 'Número' está em branco!\n";
	}
	
	if(document.formulario.bairro.value == ""){
		lista_erro = lista_erro + "O campo 'Bairro' está em branco!\n";
	}
	
	if(document.formulario.cep.value == ""){
		lista_erro = lista_erro + "O campo 'CEP' está em branco!\n";
	}
	
	if(document.formulario.cidade.value == ""){
		lista_erro = lista_erro + "O campo 'Cidade' está em branco!\n";
	}
	
	if(document.formulario.estado.value == ""){
		lista_erro = lista_erro + "O campo 'Estado' está em branco!\n";
	}
	
	if(document.formulario.nasc_dia.value == ""){
		lista_erro = lista_erro + "O campo 'Dia do Nascimento' está em branco!\n";
	}else{
		ok_dia = 1;
	}
	if(document.formulario.nasc_mes.value == ""){
		lista_erro = lista_erro + "O campo 'Mês do Nascimento' está em branco!\n";
	}else{
		ok_mes = 1;
	}
	if(document.formulario.nasc_ano.value == ""){
		lista_erro = lista_erro + "O campo 'Ano do Nascimento' está em branco\n";
	}else{
		ok_ano = 1;
	}
	if (ok_dia == 1 && ok_mes == 1 && ok_ano == 1){
	  vDia = document.formulario.nasc_dia.value;
	  vMes = document.formulario.nasc_mes.value;
	  vAno = document.formulario.nasc_ano.value;
    if (!GM_Verifica_Data(vAno, vMes, vDia)){
			lista_erro = lista_erro + "O campo 'Nascimento' está inválido!\n";
		}	
	}
	
	if(!document.formulario.sexo[0].checked && !document.formulario.sexo[1].checked){
		lista_erro = lista_erro + "O campo 'Sexo' não foi definido !\n";
	}
	
	if(document.formulario.cpf.value == ""){
		lista_erro = lista_erro + "O campo 'CPF' esta em branco!\n";
	}else{
		 if (!ValidaCPF(document.formulario.cpf.value)){
			lista_erro = lista_erro + "O campo 'CPF' esta inválido!\n";
		}
	}
	
	if(document.formulario.email.value == ""){
		lista_erro = lista_erro + "O campo 'E-Mail' está em branco!\n";
	}else{
		if(!isEmail(document.formulario.email.value, false)){
      lista_erro = lista_erro + "O campo 'E-Mail' está invalido!\n";
    }
	}
	
	if(document.formulario.Tel_DDD.value == ""){
		lista_erro = lista_erro + "O campo 'DDD do Telefone' está em branco!\n";
	}
	if(document.formulario.Telefone.value == ""){
		lista_erro = lista_erro + "O campo 'Telefone' está em branco!\n";
	}
	if (!document.formulario.doacao[0].checked && !document.formulario.doacao[1].checked && !document.formulario.doacao[2].checked){
		lista_erro = lista_erro + "Escolha uma forma de doação!\n";
	}
	else
	{
	  if (document.formulario.valor1.value == "" && document.formulario.valor2.value == "" && document.formulario.valor3.value == ""){
		  lista_erro = lista_erro + "Escolha um valor de doação!\n";
	  }
	}
	if (lista_erro != ""){
		alert(lista_erro);
	}else{
		document.formulario.submit();
	}
}