var data=new Date();
var anoAtual=data.getFullYear();

function geraComboData(nomeCampo,dataSel,css,anoQtd,obrigatorio,nomeLabel) {
			anoSel=dataSel.substring(0,4);
			mesSel=dataSel.substring(4,6);
			diaSel=dataSel.substring(6,8);
		
			if (obrigatorio==true) obrigatorio="required=\"true\" message=\"O campo "+nomeLabel.toUpperCase()+" deve ser preenchido!\""; else obrigatorio="";	
			with (document) {
		          writeln("<select name='"+nomeCampo+"_dia' id='"+nomeCampo+"_dia' class="+css+" "+obrigatorio+" nomeCampo="+nomeCampo+" onChange='concatenaValores(this.nomeCampo);'>");
		  	      writeln('<option value=""></option>');
				  
				  for (var i=1;i<=31;i++) {
				       i=new String(i)
					   if (i.length==1) i="0"+i;
					   if (i==diaSel) x="selected"; else x="";
					   
					   writeln('<option value="'+i+'" '+x+'>'+i+'</option>');
					  }
	              writeln('</select>');
		          
				  writeln("<select name='"+nomeCampo+"_mes' id='"+nomeCampo+"_mes' class="+css+" "+obrigatorio+" nomeCampo="+nomeCampo+" onChange='deletaValor(this.nomeCampo);concatenaValores(this.nomeCampo);'>");
		  	      writeln('<option value=""></option>');
				  for (var i=1;i<=12;i++) {
				       i=new String(i)
					   if (i.length==1) i="0"+i;
					   if (i==mesSel) x="selected"; else x="";
					   
					   writeln('<option value="'+i+'" '+x+'>'+i+'</option>');
					  }
	              writeln('</select>');
				  
				  writeln("<select name='"+nomeCampo+"_ano' id='"+nomeCampo+"_ano' class="+css+" "+obrigatorio+" nomeCampo="+nomeCampo+" onChange='deletaValor(this.nomeCampo);concatenaValores(this.nomeCampo);'>");
				  writeln('<option value=""></option>');
				  for (var i=(anoAtual-anoQtd);i<=(anoAtual);i++) {
				       if (i==anoSel) x="selected"; else x="";
					   writeln('<option value="'+i+'" '+x+'>'+i+'</option>');
					  }
	              writeln('</select>');
				  writeln("<input type='hidden' name='"+nomeCampo+"' value='"+dataSel+"' id='"+nomeCampo+"_data'>");
				 }
		}
		
function concatenaValores(nomeCampo) {

		 var id_dia=nomeCampo+"_dia"
		 var id_mes=nomeCampo+"_mes"
		 var id_ano=nomeCampo+"_ano"
		 var id_data=nomeCampo+"_data"

		 valor=new String(document.getElementById(id_ano).value+document.getElementById(id_mes).value+document.getElementById(id_dia).value);
		 if (valor.length==8 || valor=="")
		 	document.getElementById(id_data).value = valor;
		}
		
function deletaValor(nomeCampo){
		 
		 var id_dia=nomeCampo+"_dia"
		 var id_mes=nomeCampo+"_mes"
		 var id_ano=nomeCampo+"_ano"
		 var dia=document.getElementById(id_dia);
		 var mes=document.getElementById(id_mes);
		 var ano=document.getElementById(id_ano);
		 
		 if (mes.value==01 || mes.value==03 || mes.value==05 || mes.value==07 || mes.value==08 || mes.value==10 || mes.value==12)
		    {
				if (dia.length==29) 
				   dias=29;
				if (dia.length==30)
				   dias=30;
				if (dia.length==31)
				   dias=31;
				if (dia.length>31)
				   dias=0;
				if (dias>=29 && dias<=31) {
					  for (i=dias;i<=31;i++) {
							option=document.createElement("option")	
							var op = new Option();
							op.value=i; op.text=i;				
							dia.add(op);
						  }
				   }
			}
		 if (mes.value==02)
 			{
				if (dia.length>=29) {
					  dia.remove(31);
					  dia.remove(30);
					  dia.remove(29);
					  if (!(ano.value%4)){
						   option=document.createElement("option")
							 var op = new Option();
							 op.value=29; op.text=29;
						   dia.add(op);
					     }
					  
				   }
			}
		 if (mes.value==04 || mes.value==06 || mes.value==09 || mes.value==11)
		    {
				if (dia.length==29) 
				   dias=29;
				if (dia.length==30)
				   dias=30;
				if (dia.length==32){
					dia.remove(31);
					dias=31
				   }
				if (dias>=29 && dias<=31) {
					  for (i=dias;i<=30;i++) {
							option=document.createElement("option")
							var op = new Option();
							op.value=i; op.text=i;				
							dia.add(op);
						  }
				   }
		    }
		}