//parâmetros field textbox o está a o valor da data
//validahoje - verifica se invalida datas menor que hoje
function check_date(field){
var checkstr = "0123456789";
var DateField = field;
var Datevalue = "";
var DateTemp = "";
var seperator = "/";
var day;
var month;
var year;
var leap = 0;
var err = 0;
var i;
var aux;
   err = 0;
   DateValue = DateField.value;
   if (DateValue.indexOf("/")>=0){
		aux = DateValue.split("/")		
		dia = aux[0]
		if (dia.length == 1){
			dia = '0' + dia;
		}		
		mes = aux[1]
		if (mes.length == 1){
			mes = '0' + mes;
		}
		ano = aux[2]
		if (ano.length==2){
			ano = "20" + ano;
		}
		DateValue = dia + seperator + mes + seperator + ano
   }
   
   /* Delete all chars except 0..9 */
   for (i = 0; i < DateValue.length; i++) {
	  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
	     DateTemp = DateTemp + DateValue.substr(i,1);
	  }
   }
   DateValue = DateTemp;
   /* Always change date to 8 digits - string*/
   /* if year is entered as 2-digit / always assume 20xx */
   if (DateValue.length == 6) {
      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
   if (DateValue.length != 8) {
      err = 19;}
   /* year is wrong if year = 0000 */
   year = DateValue.substr(4,4);
   if (year == 0) {
      err = 20;
   }
   /* Validation of month*/
   month = DateValue.substr(2,2);
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   /* Validation of day*/
   day = DateValue.substr(0,2);
   if (day < 1) {
     err = 22;
   }
   /* Validation leap-year / february / day */
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   /* Validation of other months */
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   /* if 00 ist entered, no error, deleting the entry */
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }
   /* if no error, write the completed date to Input-Field (e.g. 13.12.2001) */
   if (err == 0) {
      DateField.value = day + seperator + month + seperator + year;
      if (DateField.value==''){
      	//alert("Preencha a data da receita!");
      	//DateField.focus();
      	return false;
      }else{
		var d = new Date();
		var dia = d.getDate();
		var mes = d.getMonth();
		mes = parseInt(mes) + 1
		var ano = d.getFullYear();
		var s = dia + "/" + mes + "/" + ano
		//verifica se a data é maior que hoje
		//if (comparaData(s, DateField.value) == 2 && validahoje){
		//	return false;
		//}					
		//verifica se a data é menor que 1 ano
		//ano = ano - 1
		//s = dia + "/" + mes + "/" + ano
		//if (comparaData(s, DateField.value) == 0){
		//	return false;
		//}			
      }
   }
   /* Error-message if err != 0 */
   else {
      //alert("Data incorreta!");
      //DateField.select();
	  //DateField.focus();
	  return false;
   }
}

function comparaData(data1,data2){
	/*Parametros ex:
	data1 = 01/01/2005 
	data2 = 01/01/2005
	
	Retorno:0 = data1>data2
			1 = data1=data2
			2 = data1<data2
	*/
	var s = new String();
	var dia1, mes1, ano1
	var dia2, mes2, ano2
	var d = new Date();
	var dia  = d.getDate();
	
	s = data1.split("/");
	dia1 = s[0];
	mes1 = s[1];
	ano1 = s[2];	
	mes1 = parseInt(mes1) - 1;
	var d1 = new Date(ano1,mes1, dia1);
	
	s = data2.split("/");
	dia2 = s[0];
	mes2 = s[1];
	ano2 = s[2];	
	mes2 = parseInt(mes2) - 1;
	var d2 = new Date(ano2, mes2, dia2);
	
	if (d1 < d2){
	 return 2;
	}else if (d1==d2){
	return 1}else{return 0
	}
}

