From 192e75140521ec86bc090525a556acc7932b0bbc Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Sat, 15 Oct 2022 14:34:55 +0200 Subject: [PATCH] Handle no scheduled alarm case --- ui/src/lib/alarmsingle.js | 6 +++++- ui/src/routes/+page.svelte | 36 ++++++++++++++++++++---------------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/ui/src/lib/alarmsingle.js b/ui/src/lib/alarmsingle.js index 73c82c6..f8e5927 100644 --- a/ui/src/lib/alarmsingle.js +++ b/ui/src/lib/alarmsingle.js @@ -65,7 +65,11 @@ export async function getAlarmSingle(aid) { export async function getNextAlarm() { const res = await fetch(`api/alarms/next`, {headers: {'Accept': 'application/json'}}) if (res.status == 200) { - return new Date(await res.json()); + const data = await res.json(); + if (data) + return new Date(data); + else + return data; } else { throw new Error((await res.json()).errmsg); } diff --git a/ui/src/routes/+page.svelte b/ui/src/routes/+page.svelte index ae0b083..72707e0 100644 --- a/ui/src/routes/+page.svelte +++ b/ui/src/routes/+page.svelte @@ -69,23 +69,27 @@ Loading... {:then nextalarm} - Prochain réveil : - {#if nextalarm.getDay() == new Date().getDay() && nextalarm.getMonth() == new Date().getMonth() && nextalarm.getFullYear() == new Date().getFullYear()} - aujourd'hui à - -
- - {:else if nextalarm.getDay() == new Date(Date.now() + 86400000).getDay() && nextalarm.getMonth() == new Date(Date.now() + 86400000).getMonth() && nextalarm.getFullYear() == new Date(Date.now() + 86400000).getFullYear()} - demain à - -
- - {:else if nextalarm.getTime() < Date.now() + 604800000} - {nextalarm.toLocaleString('default', {weekday: 'long'})} - à - + {#if nextalarm === null} + Pas de prochain réveil programmé {:else} - + Prochain réveil : + {#if nextalarm.getDay() == new Date().getDay() && nextalarm.getMonth() == new Date().getMonth() && nextalarm.getFullYear() == new Date().getFullYear()} + aujourd'hui à + +
+ + {:else if nextalarm.getDay() == new Date(Date.now() + 86400000).getDay() && nextalarm.getMonth() == new Date(Date.now() + 86400000).getMonth() && nextalarm.getFullYear() == new Date(Date.now() + 86400000).getFullYear()} + demain à + +
+ + {:else if nextalarm.getTime() < Date.now() + 604800000} + {nextalarm.toLocaleString('default', {weekday: 'long'})} + à + + {:else} + + {/if} {/if} {/await}