function calculaAlquiler() { const IVA = 1.21; const resultado = document.getElementById("resultado"); const diasAlquiler = parseInt(document.getElementById("diasAlquiler").value); const fechaInicio = new Date(document.getElementById("fechaInicio").value); const diasHastaRecojer = diasDiferencia(fechaInicio); //prettier-ignore const eurXVehiculo = parseInt(eurXTipo(document.getElementById("tipoVehiculo").value)); //prettier-ignore const sillaInfantil = document.getElementById("sillaInfantil").checked ? 15 : 0; const gps = document.getElementById("gps").checked ? 5 : 0; let seguro = parseInt( document.querySelector('input[name="seguro"]:checked').value ); if (seguro === 0) { seguro = parseInt( eurXSeguro(document.getElementById("tipoVehiculo").value) ); } const menor30 = document.getElementById("menor30").checked; let pvpSinIva = eurXVehiculo * diasAlquiler + sillaInfantil * diasAlquiler + gps * diasAlquiler + seguro * diasAlquiler; let pvpConIva = 0; if (menor30 === true) { pvpConIva = pvpSinIva * IVA * 1.3; } else { pvpConIva = pvpSinIva * IVA; } resultado.textContent = `El total final es: ${pvpConIva.toFixed(2)}€`; alert( `Faltan ${diasHastaRecojer} dias para tu alquiler! \n Tu fecha de entrega del vehículo es el ${formatFecha( fechaInicio )} ` ); } function eurXTipo(tipoVehiculo) { let valor = 0; switch (tipoVehiculo) { case "basico": valor = 45; break; case "gama_media": valor = 65; break; case "lujo": valor = 85; break; } return valor; } function eurXSeguro(tipoVehiculo) { let valor = 0; switch (tipoVehiculo) { case "basico": valor = 15; break; case "gama_media": valor = 25; break; case "lujo": valor = 35; break; } return valor; } function diasDiferencia(fechaFinal) { const fechaActual = new Date(); return Math.ceil((fechaFinal - fechaActual) / (1000 * 60 * 60 * 24)); } function formatFecha(fecha) { var dia = fecha.getDate(); var mes = fecha.getMonth() + 1; var ano = fecha.getFullYear(); return `${dia}/${mes}/${ano}`; }