function DataValida(DtData)
{
  var arrDt = new Array();
  var Dia = 0, Mes = 0 , Ano = 0;

  Dia = (DtData.substring(0,2));
  Mes = (DtData.substring(3,5));
  Ano = (DtData.substring(6,10));

  if (new Number(Ano) < 1900) return false;

  if ((new Number(Mes) < 1) || (new Number(Mes) > 12))  return false;

  if ((new Number(Mes)==1) || (new Number(Mes)==3) || (new Number(Mes)==5) ||
      (new Number(Mes)==7) || (new Number(Mes)==8) || (new Number(Mes)==10) ||
      (new Number(Mes)==12))
    if ((new Number(Dia)<1) || (new Number(Dia)>31))
      return false;

  if ((new Number(Mes)==4) || (new Number(Mes)==6) || (new Number(Mes)==9) ||
      (new Number(Mes)==11))
    if ((new Number(Dia)<1) || (new Number(Dia)>30))
      return false;

  if (new Number(Mes)==2)
    if ((new Number(Dia)<1) || (new Number(Dia)>29))
      return false;

  return true;
}



function calcular_idade(data){

    //calculo a data de hoje
    hoje=new Date()
    //alert(hoje)

    //calculo a data que recebo
    //descomponho a data em um array
    var array_data = data.split("/")
    //se o array nao tem tres partes, a data eh incorreta
    if (array_data.length!=3)
       return false

    //comprovo que o ano, mes, dia são corretos
    var ano
    ano = parseInt(array_data[2]);
    if (isNaN(ano))
       return false

    var mes
    mes = parseInt(array_data[1]);
    if (isNaN(mes))
       return false

    var dia
    dia = parseInt(array_data[0]);
    if (isNaN(dia))
       return false


    //se o ano da data que recebo so tem 2 cifras temos que muda-lo a 4
    if (ano<=99)
       ano +=1900

    //subtraio os anos das duas datas
    edad=hoje.getYear()- ano - 1; //-1 porque ainda nao fez anos durante este ano

    //se subtraio os meses e for menor que 0 entao nao cumpriu anos. Se for maior sim ja cumpriu
    if (hoy.getMonth() + 1 - mes < 0) //+ 1 porque os meses comecam em 0
       return idade
    if (hoje.getMonth() + 1 - mes > 0)
       return idade+1

    //entao eh porque sao iguais. Vejo os dias
    //se subtraio os dias e der menor que 0 entao nao cumpriu anos. Se der maior ou igual sim que já cumpriu
    if (hoje.getUTCDate() - dia >= 0)
       return idade + 1

    return idade
}
