function dias_entre(fecha1, fecha2) {
// The number of milliseconds in one day
  var DIA_UNO = 1000 * 60 * 60 * 24
// Convert both dates to milliseconds
  var fecha1_ms = fecha1.getTime()
  var fecha2_ms = fecha2.getTime()
// Calculate the difference in milliseconds
  var diferencia_ms = Math.abs(fecha1_ms - fecha2_ms)
// Convert back to days and return
  return Math.round(diferencia_ms/DIA_UNO)
}

function diasF(fechaini,fechafin){
  var anyoini = fechaini.substring(6,10);
  var mesini  = fechaini.substring(3,5);
  var diaini  = fechaini.substring(0,2);
  var anyofin = fechafin.substring(6,10);
  var mesfin  = fechafin.substring(3,5);
  var diafin  = fechafin.substring(0,2);
  var dateini = new Date(anyoini,mesini-1,diaini);
  var datefin = new Date(anyofin,mesfin-1,diafin);
  var dies = dias_entre(dateini,datefin);
  return dies;
}

function compararFechas(fechaini,fechafin){
  var anyoini = fechaini.substring(6,10);
  var mesini = fechaini.substring(3,5);
  var diaini = fechaini.substring(0,2);
  var anyofin = fechafin.substring(6,10);
  var mesfin = fechafin.substring(3,5);
  var diafin = fechafin.substring(0,2);
  var dateini = new Date(anyoini,mesini-1,diaini);
  var datefin = new Date(anyofin,mesfin-1,diafin);
  var timeini = dateini.getTime()+1;
  var timefin = datefin.getTime()+1;
  if(timeini>=timefin){
    alert('La data Entrada es major o igual que la data de Eixida');
    return false;
  }
  var dias = diasF(fechaini,fechafin);
  if(dias > 3){
    alert('No es poden reservar més de tres dies');
    return false;
  }
  return true;
}

function checkfechas(){
  var fechaini = document.getElementById('fecha_entrada').value;
  var fechafin = document.getElementById('fecha_salida').value;
  var fechas = false;
  if (!(fechafin==null)){
    fechas = compararFechas(fechaini,fechafin);
  }
  if(!fechas){
    return false;
  }else{
    return true;
  }
}
function checkservicios(){
  var fechaini = document.getElementById('fecha_entrada').value;
  var fechafin = document.getElementById('fecha_salida').value;
  var cnjFORM = document.emailform.elements;
  var dias = diasF(fechaini,fechafin);
  var error='';
  switch(dias){
    case 1:
      if (cnjFORM[18].checked||cnjFORM[19].checked||cnjFORM[20].checked||cnjFORM[21].checked||
          cnjFORM[22].checked||cnjFORM[23].checked||cnjFORM[24].checked||cnjFORM[25].checked){
        error= '· Desmarcar los datos correspondientes al segundo y tercer d¡a.\n';
      for (i=18;i<26;i++)
        cnjFORM[i].checked=0;
      }
      if (!(cnjFORM[16].checked)){
        error = error + '· El alojamiento del primer dia es obligatorio.\n';
        cnjFORM[16].checked=1;
      }

      if (error==""){
        document.emailform.submit();
      }
      else
        alert('Errores :\n\n'+error+'\nLos cambios se realizarán automáticamente.');
      break;
    case 2:
      if (cnjFORM[22].checked||cnjFORM[23].checked||cnjFORM[24].checked||cnjFORM[25].checked){
        error= '· Desmarcar los datos correspondientes al tercer d¡a.\n';
      for (i=22;i<26;i++)
        cnjFORM[i].checked=0;
      }
      if (!(cnjFORM[16].checked)||!(cnjFORM[20].checked)){
        error = error + '· El alojamiento del primer y segundo d¡a son obligatorios.\n';
        cnjFORM[16].checked=1;
        cnjFORM[20].checked=1;
      }

      if (error==""){
        document.emailform.submit();
      }
      else
        alert('Errores :\n\n'+error+'\nLos cambios se realizarán automáticamente.');
      break;
    case 3:
      if (!(cnjFORM[16].checked)||!(cnjFORM[20].checked)||!(cnjFORM[24].checked)){
        error = error + '· El alojamiento es obligatorios en los 3 d¡as.\n';
        cnjFORM[16].checked=1;
        cnjFORM[20].checked=1;
        cnjFORM[24].checked=1;
      }

      if (error==""){
        document.emailform.submit();
      }
      else
        alert('Errores :\n\n'+error+'\nLos cambios se realizarán automáticamente.');
      break;
  }
}
