function VInt(iInteiro) {
		var checkOK = "0123456789";
		var checkCh = 0;
		for (var i = 0; i < iInteiro.length; i++) {   
		    checkCh = 0;
			for (var j = 0;  j < checkOK.length;  j++) {  
			   if (iInteiro.charAt(i)==checkOK.charAt(j) && checkCh==0) {
			       checkCh = 1;
			   }
			}
			if (checkCh == 0) {
				return (false)
			}
		}
		return (true)
}

function VData(dma) {
	arr_dma = dma.split('/')
	if (arr_dma.length != 3) {
		return(false);
	}
	dd = arr_dma[0]; 
	mm = arr_dma[1]; 
	aa = arr_dma[2]; 
	if (!VInt(dd) || !VInt(mm) || !VInt(aa)) {
		return(false)
	}
	dd = parseInt(dd,10);
	mm = parseInt(mm,10);
	aa = parseInt(aa,10);

	if ((aa < 1900) || (mm < 1) || (mm > 12) || (dd < 1)) {
		return(false)
	}
	mes31 = new Array(1,3,5,7,8,10,12)
	for (var i=0;i<7;i++) { 
		if (mm == mes31[i]) {
			mes31_ok = true
			break
		}
		mes31_ok = false
	}
	if (mm == 2) {
		if (bisexto(aa)) {
			if (dd > 29) {
				return(false)
			}
		}
		else { 
			if (dd > 28) {
				return(false)
			}
		}
	} 
	else { 
		if ((mes31_ok) && (dd > 31)) {
					return(false)
		} 
		else { 
				if ((!mes31_ok) && (dd > 30)) {
						return(false)
				}
		}
	}
	return(true)
}

function VHora(hms) {
	if (hms.length < 5) {
		return(false);
	}
	arr_hms = hms.split(':')
	if (arr_hms.length < 2 || arr_hms.length > 3) {
		return(false);
	}
	hh = arr_hms[0]; 
	mm = arr_hms[1]; 
	ss = ((arr_hms.length == 3) ? arr_hms[2] : 0) 
	if (!VInt(hh) || !VInt(mm) || !VInt(ss)) {
		return(false)
	}
	if ((parseInt(hh,10) > 23) || (parseInt(hh,10) < 1) || (parseInt(mm,10) < 0) || (parseInt(mm,10) > 59) || (parseInt(ss,10) < 0) || (parseInt(ss,10) > 59)) { 
		return(false);
	}
	return(true)
}

function bisexto(ano) {
	if (ano % 4 == 0) {
		if (ano % 100 == 0) {
			if (ano % 400 == 0) {
				return(true)
			} 
			return(false)
		} 
		return(true)
	} else {return(false) }
}


function CompData(data1,data2) {
	if (!VData(data1) || !VData(data2)) {
		return('invalido')	
	}
	if (FDataAMD(data1) > FDataAMD(data2)) {
		return('maior')
	} 
	if (FDataAMD(data1) < FDataAMD(data2)) {
			return('menor')
	}
	return('igual')
}

function FData(data) {
	if (!VData(data)) {
		return('invalido')	
	}
	arr_dma = data.split('/')
	dd = parseInt(arr_dma[0],10);
	dd = ((dd < 10) ? "0":"")+dd.toString()
	mm = parseInt(arr_dma[1],10); 
	mm = ((mm < 10) ? "0":"")+mm.toString()
	aa = parseInt(arr_dma[2],10);
	aa = ((aa < 10) ? "200":"")+aa.toString()
	aa = ((aa > 9 && aa < 30) ? "20":"")+aa.toString()
	aa = ((aa > 29 && aa < 100) ? "19":"")+aa.toString()
	return(dd+'/'+mm+'/'+aa)
}

function FDataAMD(data) {
	if (!VData(data)) {
		return('invalido')	
	}
	arr_dma = data.split('/')
	dd = parseInt(arr_dma[0],10);
	dd = ((dd < 10) ? "0":"")+dd.toString()
	mm = parseInt(arr_dma[1],10); 
	mm = ((mm < 10) ? "0":"")+mm.toString()
	aa = parseInt(arr_dma[2],10);
	aa = ((aa < 10) ? "200":"")+aa.toString()
	aa = ((aa > 9 && aa < 30) ? "20":"")+aa.toString()
	aa = ((aa > 29 && aa < 100) ? "19":"")+aa.toString()
	return(aa+mm+dd)
}

function FHora(hora) {
	if (!VHora(hora)) {
		return('invalido')	
	}
	arr_hms = hora.split(':')
	hh = parseInt(arr_hms[0],10);
	hh = ((hh < 10) ? "0":"")+hh.toString()
	mm = parseInt(arr_hms[1],10); 
	mm = ((mm < 10) ? "0":"")+mm.toString()
	ss = parseInt(arr_hms[2],10); 
	if (ss == '') { ss = 0} 
	ss = ((ss < 10) ? "0":"")+ss.toString()
	return(hh+':'+mm+':'+ss)
}

function FHoraHMS(hora) {
	if (!VHora(hora)) {
		return('invalido')	
	}
	arr_hms = hora.split(':')
	hh = parseInt(arr_hms[0],10);
	hh = ((hh < 10) ? "0":"")+hh.toString()
	mm = parseInt(arr_hms[1],10); 
	mm = ((mm < 10) ? "0":"")+mm.toString()
	ss = parseInt(arr_hms[2],10); 
	if (ss == '') { ss = 0} 
	ss = ((ss < 10) ? "0":"")+ss.toString()
	return(hh+mm+ss)
}

function CompHora(hora1,hora2) {
	if (!VHora(hora1) || !VHora(hora2)) {
		return('invalido')	
	}
	if (FHoraHMS(hora1) > FHoraHMS(hora2)) {
		return('maior')
	} 
	if (FHoraHMS(hora1) < FHoraHMS(hora2)) {
			return('menor')
	}
	return('igual')
}

function getDia(strData) {
	var dia = 0;
	arr = strData.split('/');
	dia = parseInt(arr[0],10);
	return dia;
}

function getMes(strData) {
	var mes = 0;
	arr = strData.split('/');
	mes = parseInt(arr[1],10);
	return mes;
}

function getAno(strData) {
	var ano = 0;
	arr = strData.split('/');
	ano = parseInt(arr[2],10);
	return ano;
}

function AddDias(strData, dias) {
	var d = getDia(strData);
	var m = getMes(strData);
	var y = getAno(strData);
	var data = new Date(y,m-1,d + dias);
	strData = "";
	strData += ((data.getDate() < 10)?"0":"") + data.getDate() + "/";
	strData += ((data.getMonth() < 9)?"0":"") + (data.getMonth() + 1) + "/";
	strData += ((data.getYear() < 10)?"200":"");
	strData += ((data.getYear() > 9 && data.getYear() < 30)?"20":"");
	strData += ((data.getYear() > 29 && data.getYear() < 100)?"19":"") + data.getYear();
	return strData;
}

function CriaArray (n) {
	this.length = n 
}

function DataPorExtenso() {
	hoje = new Date()
	dia = hoje.getDate()
	dias = hoje.getDay()
	mes = hoje.getMonth()
	ano = hoje.getYear()

	if (dia < 10)
		dia = "0" + dia

	if (ano < 2000)
		ano = "19" + ano

	NomeDia = new CriaArray(7)
	NomeDia[0] = "Domingo"
	NomeDia[1] = "Segunda-feira"
	NomeDia[2] = "Ter&ccedil;a-feira"
	NomeDia[3] = "Quarta-feira"
	NomeDia[4] = "Quinta-feira"
	NomeDia[5] = "Sexta-feira"
	NomeDia[6] = "S&aacute;bado"

	NomeMes = new CriaArray(12)
	NomeMes[0] = "Janeiro"
	NomeMes[1] = "Fevereiro"
	NomeMes[2] = "Mar&ccedil;o"
	NomeMes[3] = "Abril"
	NomeMes[4] = "Maio"
	NomeMes[5] = "Junho"
	NomeMes[6] = "Julho"
	NomeMes[7] = "Agosto"
	NomeMes[8] = "Setembro"
	NomeMes[9] = "Outubro"
	NomeMes[10] = "Novembro"
	NomeMes[11] = "Dezembro"

	document.write ("" + NomeDia[dias] + ", " + dia + " de " + NomeMes[mes] + " de " + ano + "")

}