From 7b92166d18e0759d3cc805c9cd96ef39fbdcee61 Mon Sep 17 00:00:00 2001 From: Ponkhy Date: Wed, 1 Sep 2021 00:36:24 +0200 Subject: [PATCH] Added clear all db statistics function --- server/server.js | 22 ++++++++++++++++++++-- src/languages/de-DE.js | 5 +++-- src/languages/en.js | 5 +++-- src/mixins/socket.js | 4 ++++ src/pages/Details.vue | 2 -- src/pages/Settings.vue | 18 ++++++++++++++++++ 6 files changed, 48 insertions(+), 8 deletions(-) diff --git a/server/server.js b/server/server.js index 3530981b..6c49b8c2 100644 --- a/server/server.js +++ b/server/server.js @@ -566,7 +566,6 @@ let indexHTML = fs.readFileSync("./dist/index.html").toString(); callback({ ok: true, - msg: "Events Successfully Cleared.", }); } catch (e) { @@ -589,7 +588,26 @@ let indexHTML = fs.readFileSync("./dist/index.html").toString(); callback({ ok: true, - msg: "Heartbeats Successfully Cleared.", + }); + + } catch (e) { + callback({ + ok: false, + msg: e.message, + }); + } + }); + + socket.on("clearStatistics", async (callback) => { + try { + checkLogin(socket) + + console.log(`Clear Statistics User ID: ${socket.userID}`) + + await R.exec("DELETE FROM heartbeat"); + + callback({ + ok: true, }); } catch (e) { diff --git a/src/languages/de-DE.js b/src/languages/de-DE.js index 58d283a3..182f9e1a 100644 --- a/src/languages/de-DE.js +++ b/src/languages/de-DE.js @@ -104,9 +104,10 @@ export default { rrtypeDescription: "Wähle den RR-Typ aus, welchen du überwachen möchtest.", "Last Result": "Letztes Ergebnis", pauseMonitorMsg: "Bist du sicher das du den Monitor pausieren möchtest?", - clearEventsMsg: "Bist du sicher das du alle Ereignisse löschen möchtest?", - clearHeartbeatsMsg: "Bist du sicher das du alle Statistiken löschen möchtest?", + clearEventsMsg: "Bist du sicher das du alle Ereignisse für diesen Monitor löschen möchtest?", + clearHeartbeatsMsg: "Bist du sicher das du alle Statistiken für diesen Monitor löschen möchtest?", "Clear Data": "Lösche Daten", "Events": "Ereignisse", "Heartbeats": "Statistiken", + confirmClearStatisticsMsg: "Bist du sicher das du ALLE Statistiken löschen möchtest?", } diff --git a/src/languages/en.js b/src/languages/en.js index 0729e2e7..f7241807 100644 --- a/src/languages/en.js +++ b/src/languages/en.js @@ -16,6 +16,7 @@ export default { resoverserverDescription: "Cloudflare is the default server, you can change the resolver server anytime.", rrtypeDescription: "Select the RR-Type you want to monitor", pauseMonitorMsg: "Are you sure want to pause?", - clearEventsMsg: "Are you sure want to delete all events?", - clearHeartbeatsMsg: "Are you sure want to delete all heartbeats?", + clearEventsMsg: "Are you sure want to delete all events for this monitor?", + clearHeartbeatsMsg: "Are you sure want to delete all heartbeats for this monitor?", + confirmClearStatisticsMsg: "Are you sure want to delete ALL statistics?", } diff --git a/src/mixins/socket.js b/src/mixins/socket.js index 6f6f033a..64560ea7 100644 --- a/src/mixins/socket.js +++ b/src/mixins/socket.js @@ -261,6 +261,10 @@ export default { clearHeartbeats(monitorID, callback) { socket.emit("clearHeartbeats", monitorID, callback) }, + + clearStatistics(callback) { + socket.emit("clearStatistics", callback) + }, }, computed: { diff --git a/src/pages/Details.vue b/src/pages/Details.vue index 5c05b3dd..907e2d12 100644 --- a/src/pages/Details.vue +++ b/src/pages/Details.vue @@ -360,7 +360,6 @@ export default { clearEvents() { this.$root.clearEvents(this.monitor.id, (res) => { if (res.ok) { - toast.success(res.msg); this.$router.go(); } else { toast.error(res.msg); @@ -371,7 +370,6 @@ export default { clearHeartbeats() { this.$root.clearHeartbeats(this.monitor.id, (res) => { if (res.ok) { - toast.success(res.msg); this.$router.go(); } else { toast.error(res.msg); diff --git a/src/pages/Settings.vue b/src/pages/Settings.vue index d71ec109..da56613e 100644 --- a/src/pages/Settings.vue +++ b/src/pages/Settings.vue @@ -126,6 +126,7 @@ + @@ -184,6 +185,10 @@

Bitte mit Vorsicht nutzen.

+ + + {{ $t("confirmClearStatisticsMsg") }} + @@ -282,6 +287,10 @@ export default { this.$refs.confirmDisableAuth.show(); }, + confirmClearStatistics() { + this.$refs.confirmClearStatistics.show(); + }, + disableAuth() { this.settings.disableAuth = true; this.saveSettings(); @@ -293,6 +302,15 @@ export default { this.$root.storage().removeItem("token"); }, + clearStatistics() { + this.$root.clearStatistics((res) => { + if (res.ok) { + this.$router.go(); + } else { + toast.error(res.msg); + } + }) + }, }, }