/*Javascript fechas.js
Este código no servirá para manejar formularios con fechas. Tenemos funciones para imprimir
un desplegable tipo Desde, un desplegable tipo Hasta, inicializar los valores de las fechas
Desde un número de días, meses o años y hasta el día de hoy. También incorpora una función
de comprobación de la validez de la fecha introducida
*/

function UltDiaMes(Mes, Ano) {
 switch (Mes) {
  case "01":
  case "03":
  case "05":
  case "07":
  case "08":
  case "10":
  case "12":
   return ("31");
  case "04":
  case "06":
  case "09":
  case "11":
   return ("30");
  case "02":
   if (((parseInt(Ano,10))%4) == 0)
    return ("29");
   else
    return ("28");
 }
}

function ComprobarFecha(Fecha) {
 if (Fecha.length != 8)
  return (false);
 for ( ind=0; ind < 8; ind++ )
  if ((Fecha.charAt(ind)<'0') || (Fecha.charAt(ind)>'9'))
   return (false);
 Ano=Fecha.substr(0,4);
 Mes=Fecha.substr(4,2);
 Dia=Fecha.substr(6,2);
 UltimoDia=UltDiaMes(Mes,Ano)
 if ((Mes < '01') || (Mes > '12') || (Dia < '01') || (Dia > UltimoDia))
  return (false);
 return (true);
}

function comprobar() {
	cad = document.form1.anyo1.options[document.form1.anyo1.selectedIndex].value+document.form1.mes1.options
        [document.form1.mes1.selectedIndex].value+document.form1.dia1.options
        [document.form1.dia1.selectedIndex].value;
	cad2 = document.form1.anyo2.options[document.form1.anyo2.selectedIndex].value+document.form1.mes2.options
        [document.form1.mes2.selectedIndex].value+document.form1.dia2.options
        [document.form1.dia2.selectedIndex].value;
	document.form1.fecha1.value=cad1;
	document.form1.fecha2.value=cad2;
 if (!(ComprobarFecha(cad))) {
  alert("Error in 'From' field.");
  return( false);
 }
 if (!(ComprobarFecha(cad2))) {
  alert("Error in 'To' field.");
  return( false);
 }
 if (cad>cad2) {
  alert("Wrong order in dates.");
  return( false);
 }
 document.form1.submit();
 return ( true );
}

function desdeDias(numDias) {
var hoy = new Date();
aaaa=hoy.getFullYear();
mm=hoy.getMonth();
dd=hoy.getDate();
document.form1.anyo1.value=aaaa;
if (dd-numDias<0){
   document.form1.dia1.selectedIndex=31-numDias; 
   if (mm>0)
	   document.form1.mes1.selectedIndex=mm-1;
   else{
	   document.form1.mes1.selectedIndex=11;
	   document.form1.anyo1.value=aaaa;
   }
	
}
else{
	document.form1.dia1.selectedIndex=dd-numDias;
	document.form1.mes1.selectedIndex=mm;
}

return(true);
}

function desdeMeses(numMeses) {
var hoy = new Date();
aaaa=hoy.getFullYear();
mm=hoy.getMonth();
dd=hoy.getDate();

document.form1.anyo1.value=aaaa;
if (mm-numMeses<=0){
	document.form1.mes1.selectedIndex=12-numMeses;
	document.form1.anyo1.value=aaaa;
}
else
	document.form1.mes1.selectedIndex=mm-numMeses;
document.form1.dia1.selectedIndex=dd-1;

return(true);
}

function desdeAnyos(numAnyos) {
var hoy = new Date();
aaaa=hoy.getFullYear();
mm=hoy.getMonth();
dd=hoy.getDate();

document.form1.mes1.selectedIndex=mm;
document.form1.dia1.selectedIndex=dd-1;
document.form1.anyo1.value=aaaa-numAnyos;
return(true);
}

function hastaMeses(numMeses) {
var hoy = new Date();
aaaa=hoy.getFullYear();
mm=hoy.getMonth();
dd=hoy.getDate();

document.form1.anyo2.value=aaaa;
if (mm+numMeses>11){
	document.form1.mes2.selectedIndex=numMeses-(12-mm)-2;
	document.form1.anyo2.value=aaaa+1;
}
else
	document.form1.mes2.selectedIndex=mm+numMeses;
document.form1.dia2.selectedIndex=dd-1;

return(true);
}

function fechaHoy() {
var hoy = new Date();
aaaa=hoy.getFullYear();
mm=hoy.getMonth();
dd=hoy.getDate();

document.form1.mes2.selectedIndex=mm;
document.form1.dia2.selectedIndex=dd-1;
document.form1.anyo2.value=aaaa;


return(true);
}


function desplegablesFechaDesde(anyo)
{   
var hoy = new Date();
aaaa=hoy.getFullYear();
document.write ('<span class="colorLetras1">From</span> ');
document.write ('  <select name="dia1" size="1" id="dia1">');
document.write ('    <option value="01">1</option>');
document.write ('    <option value="02">2</option>');
document.write ('    <option value="03">3</option>');
document.write ('    <option value="04">4</option>');
document.write ('    <option value="05">5</option>');
document.write ('    <option value="06">6</option>');
document.write ('    <option value="07">7</option>');
document.write ('    <option value="08">8</option>');
document.write ('    <option value="09">9</option>');
document.write ('    <option value="10">10</option>');
document.write ('    <option value="11">11</option>');
document.write ('    <option value="12">12</option>');
document.write ('    <option value="13">13</option>');
document.write ('    <option value="14">14</option>');
document.write ('    <option value="15">15</option>');
document.write ('    <option value="16">16</option>');
document.write ('    <option value="17">17</option>');
document.write ('    <option value="18">18</option>');
document.write ('    <option value="19">19</option>');
document.write ('    <option value="20">20</option>');
document.write ('    <option value="21">21</option>');
document.write ('    <option value="22">22</option>');
document.write ('    <option value="23">23</option>');
document.write ('    <option value="24">24</option>');
document.write ('    <option value="25">25</option>');
document.write ('    <option value="26">26</option>');
document.write ('    <option value="27">27</option>');
document.write ('    <option value="28">28</option>');
document.write ('    <option value="29">29</option>');
document.write ('    <option value="30">30</option>');
document.write ('    <option value="31">31</option>');
document.write ('  </select>');
document.write ('  <select name="mes1" size="1" id="mes1">');
document.write ('    <option value="01">1</option>');
document.write ('    <option value="02">2</option>');
document.write ('    <option value="03">3</option>');
document.write ('    <option value="04">4</option>');
document.write ('    <option value="05">5</option>');
document.write ('    <option value="06">6</option>');
document.write ('    <option value="07">7</option>');
document.write ('    <option value="08">8</option>');
document.write ('    <option value="09">9</option>');
document.write ('    <option value="10">10</option>');
document.write ('    <option value="11">11</option>');
document.write ('    <option value="12">12</option>');
document.write ('  </select>');
document.write ('  <select name="anyo1" id="anyo1">');
if (anyo==null)
	anyo=1999;
for (i=anyo;i<=aaaa;i++){
	document.write ('    <option value="'+i+'">'+i+'</option>');
}
document.write ('  </select>');
document.write ('<input type="hidden" name="fecha1">');
}

function desplegablesFechaHasta(anyo)
{   
var hoy = new Date();
aaaa=hoy.getFullYear()+1;
document.write ('<span class="colorLetras1">To</span> ');
document.write ('  <select name="dia2" size="1" id="dia2">');
document.write ('    <option value="01">1</option>');
document.write ('    <option value="02">2</option>');
document.write ('    <option value="03">3</option>');
document.write ('    <option value="04">4</option>');
document.write ('    <option value="05">5</option>');
document.write ('    <option value="06">6</option>');
document.write ('    <option value="07">7</option>');
document.write ('    <option value="08">8</option>');
document.write ('    <option value="09">9</option>');
document.write ('    <option value="10">10</option>');
document.write ('    <option value="11">11</option>');
document.write ('    <option value="12">12</option>');
document.write ('    <option value="13">13</option>');
document.write ('    <option value="14">14</option>');
document.write ('    <option value="15">15</option>');
document.write ('    <option value="16">16</option>');
document.write ('    <option value="17">17</option>');
document.write ('    <option value="18">18</option>');
document.write ('    <option value="19">19</option>');
document.write ('    <option value="20">20</option>');
document.write ('    <option value="21">21</option>');
document.write ('    <option value="22">22</option>');
document.write ('    <option value="23">23</option>');
document.write ('    <option value="24">24</option>');
document.write ('    <option value="25">25</option>');
document.write ('    <option value="26">26</option>');
document.write ('    <option value="27">27</option>');
document.write ('    <option value="28">28</option>');
document.write ('    <option value="29">29</option>');
document.write ('    <option value="30">30</option>');
document.write ('    <option value="31">31</option>');
document.write ('  </select>');
document.write ('  <select name="mes2" size="1" id="mes2">');
document.write ('    <option value="01">1</option>');
document.write ('    <option value="02">2</option>');
document.write ('    <option value="03">3</option>');
document.write ('    <option value="04">4</option>');
document.write ('    <option value="05">5</option>');
document.write ('    <option value="06">6</option>');
document.write ('    <option value="07">7</option>');
document.write ('    <option value="08">8</option>');
document.write ('    <option value="09">9</option>');
document.write ('    <option value="10">10</option>');
document.write ('    <option value="11">11</option>');
document.write ('    <option value="12">12</option>');
document.write ('  </select>');
document.write ('  <select name="anyo2" id="anyo2">');
if (anyo==null)
	anyo=1999;
for (i=anyo;i<=aaaa;i++){
	document.write ('    <option value="'+i+'">'+i+'</option>');
}
document.write ('  </select>');
document.write ('<input type="hidden" name="fecha2">');
fechaHoy();
}
