// JavaScript Document
function FormataData(id,teclapres){
	vr = document.getElementById(id).value;
	vr = vr.replace(".","");
	vr = vr.replace("-","");
	vr = vr.replace("/","");
	tam = vr.length + 1 ;

	if (teclapres!=9 && teclapres!=8 && teclapres!=111 && teclapres!=223 && teclapres!=47){
		if (tam==3)
			document.getElementById(id).value = vr.substr(0,2) + '/' + vr.substr(5,tam);
		if (tam==5)
			document.getElementById(id).value = vr.substr(0,2) + '/' + vr.substr(2,2) + '/' + vr.substr(5,tam);
	}
}

// Verifica se a Data digitada é válida
function isValidData(vfield, vfieldName)
{
var diaStr, mesStr, anoStr
var diaInt, mesInt, anoInt
var tam, sep1, sep2, verAno

tam = vfield.value.length;

sep1 = parseInt(vfield.value.indexOf("/", 0));

if (sep1<0)
{
alert("A Data digitada deve ter o seguinte formato: DD/MM/AAAA !");
return false;
}

sep2 = parseInt(vfield.value.indexOf("/", sep1+1))

if (sep2<5)
{
alert("A Data digitada deve ter o seguinte formato: DD/MM/AAAA !");
return false;
}

verAno = tam-sep2;

if(verAno < 5 )
{
alert("As datas devem ser preenchidas utilizando 4 dígitos para informar o Ano (ex.: DD/MM/AAAA)!");
return false;
}

diaStr = vfield.value.substring(0, sep1);

if(diaStr.substring(0, 1) == "0")
diaStr = diaStr.substring(1, 2);

if (isValidNumberValue(diaStr, vfieldName))
{
mesStr = vfield.value.substring(sep1+1, sep2);

if(mesStr.substring(0, 1) == "0")
mesStr = mesStr.substring(1, 2);

if (isValidNumberValue(mesStr, vfieldName))
{
anoStr = vfield.value.substring(sep2+1, tam);

if (isValidNumberValue(anoStr, vfieldName))
{
diaInt = parseInt(diaStr);
mesInt = parseInt(mesStr);
anoInt = parseInt(anoStr);

if ((diaInt <= 0) || (diaInt > 31))
{
alert("O dia informado não é válido!");
return false;
}

if ((mesInt <= 0) || (mesInt > 12))
{
alert("O mês informado não é válido!");
return false;
}

if ((mesInt == 4) || (mesInt == 6) || (mesInt == 9) || (mesInt == 11))
{
if( diaInt > 30)
{
alert("O mês informado não possui mais de 30 dias!");
return false;
}
}
if (anoInt < 1960) {
	alert("Ano inválido. Digite um ano mais próximo.");
	return false;
}
if (mesInt == 2)
{
if ((anoInt % 4 == 0) && ( (anoInt % 100 != 0) || (anoInt % 400 == 0)))
{
if (diaInt > 29)
{
alert("O mês informado não possui mais de 29 dias!");
return false;
}
}
else
{
if(diaInt > 28)
{
alert("O mês informado não possui mais de 28 dias!");
return false;
}
}
return true;
}
return true;
}
else
return false;
}
else
return false;
}
else
return false;
}

// Verifica se somente números foram digitados no campo;
function isValidNumberValue (objTextControl, strFieldName)
{
var strValidNumber = "1234567890";

for (nCount=0; nCount < objTextControl.length; nCount++)
{
strTempChar=objTextControl.substring(nCount,nCount+1);
if ( strValidNumber.indexOf(strTempChar,0)==-1)
{
alert("O campo " + strFieldName + " deve conter somente números!");
return false;
}
}

return true;
}