diff --git a/src/components/services/Gatus.vue b/src/components/services/Gatus.vue index e30933f..8954a10 100644 --- a/src/components/services/Gatus.vue +++ b/src/components/services/Gatus.vue @@ -40,10 +40,10 @@ export default { statusMessage: false, }), created() { - const updateInterval = parseInt(this.item.updateInterval, 10) || 0; - if (updateInterval > 0) { - setInterval(() => this.fetchStatus(), updateInterval); - } + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Gotify.vue b/src/components/services/Gotify.vue index 46d9292..372e214 100644 --- a/src/components/services/Gotify.vue +++ b/src/components/services/Gotify.vue @@ -44,10 +44,17 @@ export default { }, }, created() { - this.fetchStatus(); - this.fetchMessages(); + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchAll; + + // Initial data fetch + this.fetchAll(); }, methods: { + fetchAll: async function () { + this.fetchStatus(); + this.fetchMessages(); + }, fetchStatus: async function () { await this.fetch(`/health`) .catch((e) => console.log(e)) diff --git a/src/components/services/Healthchecks.vue b/src/components/services/Healthchecks.vue index 8827a4e..1cfaec8 100644 --- a/src/components/services/Healthchecks.vue +++ b/src/components/services/Healthchecks.vue @@ -55,6 +55,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Jellystat.vue b/src/components/services/Jellystat.vue index adcd43d..2026364 100644 --- a/src/components/services/Jellystat.vue +++ b/src/components/services/Jellystat.vue @@ -44,6 +44,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Linkding.vue b/src/components/services/Linkding.vue index 0a9071d..f5536be 100644 --- a/src/components/services/Linkding.vue +++ b/src/components/services/Linkding.vue @@ -26,6 +26,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchBookmarks; + + // Initial data fetch this.fetchBookmarks(); }, methods: { diff --git a/src/components/services/Medusa.vue b/src/components/services/Medusa.vue index 4067eb9..4bc1559 100644 --- a/src/components/services/Medusa.vue +++ b/src/components/services/Medusa.vue @@ -47,6 +47,10 @@ export default { }; }, created: function () { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchConfig; + + // Initial data fetch this.fetchConfig(); }, methods: { diff --git a/src/components/services/Miniflux.vue b/src/components/services/Miniflux.vue index 0ae3bb7..84ce05e 100644 --- a/src/components/services/Miniflux.vue +++ b/src/components/services/Miniflux.vue @@ -63,10 +63,10 @@ export default { }, }, created() { - const checkInterval = parseInt(this.item.checkInterval, 10) || 0; - if (checkInterval > 0) { - setInterval(() => this.fetchConfig(), checkInterval); - } + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Mylar.vue b/src/components/services/Mylar.vue index 8250417..eed54d3 100644 --- a/src/components/services/Mylar.vue +++ b/src/components/services/Mylar.vue @@ -39,6 +39,10 @@ export default { }; }, created: function () { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchConfig; + + // Initial data fetch this.fetchConfig(); }, methods: { diff --git a/src/components/services/OctoPrint.vue b/src/components/services/OctoPrint.vue index 626288a..a04214f 100644 --- a/src/components/services/OctoPrint.vue +++ b/src/components/services/OctoPrint.vue @@ -82,10 +82,18 @@ export default { }, created() { this.display = this.item.display == "bar" ? this.item.display : "text"; - this.fetchPrinterStatus(); - this.fetchStatus(); + + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchAll; + + // Initial data fetch + this.fetchAll(); }, methods: { + fetchAll: async function () { + this.fetchPrinterStatus(); + this.fetchStatus(); + }, fetchStatus: async function () { try { const response = await this.fetch(`api/job?apikey=${this.item.apikey}`); diff --git a/src/components/services/PeaNUT.vue b/src/components/services/PeaNUT.vue index 806dbac..0e525f8 100644 --- a/src/components/services/PeaNUT.vue +++ b/src/components/services/PeaNUT.vue @@ -63,6 +63,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Portainer.vue b/src/components/services/Portainer.vue index 8edd029..1b24474 100644 --- a/src/components/services/Portainer.vue +++ b/src/components/services/Portainer.vue @@ -82,6 +82,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); this.fetchVersion(); }, diff --git a/src/components/services/Prometheus.vue b/src/components/services/Prometheus.vue index fa019dd..59cd331 100644 --- a/src/components/services/Prometheus.vue +++ b/src/components/services/Prometheus.vue @@ -59,6 +59,10 @@ export default { }, }, created() { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Proxmox.vue b/src/components/services/Proxmox.vue index 975b045..e930ce7 100644 --- a/src/components/services/Proxmox.vue +++ b/src/components/services/Proxmox.vue @@ -101,6 +101,11 @@ export default { }), created() { if (this.item.hide) this.hide = this.item.hide; + + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/Readarr.vue b/src/components/services/Readarr.vue index 52d38d4..0a02f42 100644 --- a/src/components/services/Readarr.vue +++ b/src/components/services/Readarr.vue @@ -46,6 +46,10 @@ export default { }; }, created: function () { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchConfig; + + // Initial data fetch this.fetchConfig(); }, methods: { diff --git a/src/components/services/Transmission.vue b/src/components/services/Transmission.vue index f6ce4dd..f6e1c75 100644 --- a/src/components/services/Transmission.vue +++ b/src/components/services/Transmission.vue @@ -18,7 +18,8 @@
- {{ count || 0 }} + {{ count || 0 }} torrent torrents diff --git a/src/components/services/UptimeKuma.vue b/src/components/services/UptimeKuma.vue index 0440a73..a085437 100644 --- a/src/components/services/UptimeKuma.vue +++ b/src/components/services/UptimeKuma.vue @@ -110,6 +110,11 @@ export default { created() { /* eslint-disable */ this.item.url = `${this.item.url}/status/${this.dashboard}`; + + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchStatus; + + // Initial data fetch this.fetchStatus(); }, methods: { diff --git a/src/components/services/WUD.vue b/src/components/services/WUD.vue index 4cf010b..c85467d 100644 --- a/src/components/services/WUD.vue +++ b/src/components/services/WUD.vue @@ -37,6 +37,10 @@ export default { }; }, created: function () { + // Set up auto-update method for the scheduler + this.autoUpdateMethod = this.fetchConfig; + + // Initial data fetch this.fetchConfig(); }, methods: {