webapp: Added loading animation for ntp admin

This commit is contained in:
Thomas Basler 2022-07-13 18:46:58 +02:00
parent ebd0643618
commit 608456b14d

View File

@ -6,6 +6,14 @@
<BootstrapAlert v-model="showAlert" dismissible :variant="alertType"> <BootstrapAlert v-model="showAlert" dismissible :variant="alertType">
{{ alertMessage }} {{ alertMessage }}
</BootstrapAlert> </BootstrapAlert>
<div class="text-center" v-if="dataLoading || timezoneLoading">
<div class="spinner-border" role="status">
<span class="visually-hidden">Loading...</span>
</div>
</div>
<template v-if="!dataLoading && !timezoneLoading">
<form @submit="saveNtpConfig"> <form @submit="saveNtpConfig">
<div class="card"> <div class="card">
<div class="card-header text-white bg-primary">NTP Configuration</div> <div class="card-header text-white bg-primary">NTP Configuration</div>
@ -41,6 +49,7 @@
</div> </div>
<button type="submit" class="btn btn-primary mb-3">Save</button> <button type="submit" class="btn btn-primary mb-3">Save</button>
</form> </form>
</template>
</div> </div>
</template> </template>
@ -54,6 +63,8 @@ export default defineComponent({
}, },
data() { data() {
return { return {
dataLoading: true,
timezoneLoading: true,
ntpConfigList: { ntpConfigList: {
ntp_server: "", ntp_server: "",
ntp_timezone: "", ntp_timezone: "",
@ -78,11 +89,16 @@ export default defineComponent({
}, },
methods: { methods: {
getTimezoneList() { getTimezoneList() {
this.timezoneLoading = true;
fetch("/zones.json") fetch("/zones.json")
.then((response) => response.json()) .then((response) => response.json())
.then((data) => (this.timezoneList = data)); .then((data) => {
this.timezoneList = data;
this.timezoneLoading = false;
});
}, },
getNtpConfig() { getNtpConfig() {
this.dataLoading = true;
fetch("/api/ntp/config") fetch("/api/ntp/config")
.then((response) => response.json()) .then((response) => response.json())
.then( .then(
@ -92,6 +108,7 @@ export default defineComponent({
this.ntpConfigList.ntp_timezone_descr + this.ntpConfigList.ntp_timezone_descr +
"---" + "---" +
this.ntpConfigList.ntp_timezone; this.ntpConfigList.ntp_timezone;
this.dataLoading = false;
} }
); );
}, },