diff --git a/server/server.js b/server/server.js index d4fe668b3..3530981bb 100644 --- a/server/server.js +++ b/server/server.js @@ -552,6 +552,54 @@ let indexHTML = fs.readFileSync("./dist/index.html").toString(); } }); + socket.on("clearEvents", async (monitorID, callback) => { + try { + checkLogin(socket) + + console.log(`Clear Events Monitor: ${monitorID} User ID: ${socket.userID}`) + + await R.exec("UPDATE heartbeat SET msg = ?, important = ? WHERE monitor_id = ? ", [ + "", + "0", + monitorID, + ]); + + callback({ + ok: true, + msg: "Events Successfully Cleared.", + }); + + } catch (e) { + callback({ + ok: false, + msg: e.message, + }); + } + }); + + socket.on("clearHeartbeats", async (monitorID, callback) => { + try { + checkLogin(socket) + + console.log(`Clear Heartbeats Monitor: ${monitorID} User ID: ${socket.userID}`) + + await R.exec("DELETE FROM heartbeat WHERE monitor_id = ?", [ + monitorID + ]); + + callback({ + ok: true, + msg: "Heartbeats Successfully Cleared.", + }); + + } catch (e) { + callback({ + ok: false, + msg: e.message, + }); + } + }); + debug("added all socket handlers") // *************************** diff --git a/src/assets/vars.scss b/src/assets/vars.scss index 9d487eb26..2f4369832 100644 --- a/src/assets/vars.scss +++ b/src/assets/vars.scss @@ -16,3 +16,5 @@ $dark-border-color: #1d2634; $easing-in: cubic-bezier(0.54, 0.78, 0.55, 0.97); $easing-out: cubic-bezier(0.25, 0.46, 0.45, 0.94); $easing-in-out: cubic-bezier(0.79, 0.14, 0.15, 0.86); + +$dropdown-border-radius: 0.5rem; diff --git a/src/languages/de-DE.js b/src/languages/de-DE.js index ba852cf32..58d283a3b 100644 --- a/src/languages/de-DE.js +++ b/src/languages/de-DE.js @@ -104,4 +104,9 @@ 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?", + "Clear Data": "Lösche Daten", + "Events": "Ereignisse", + "Heartbeats": "Statistiken", } diff --git a/src/languages/en.js b/src/languages/en.js index 75c25dd57..0729e2e7e 100644 --- a/src/languages/en.js +++ b/src/languages/en.js @@ -16,4 +16,6 @@ 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?", } diff --git a/src/mixins/socket.js b/src/mixins/socket.js index 454422e94..6f6f033a6 100644 --- a/src/mixins/socket.js +++ b/src/mixins/socket.js @@ -254,6 +254,13 @@ export default { this.importantHeartbeatList = {} }, + clearEvents(monitorID, callback) { + socket.emit("clearEvents", monitorID, callback) + }, + + clearHeartbeats(monitorID, callback) { + socket.emit("clearHeartbeats", monitorID, callback) + }, }, computed: { diff --git a/src/pages/Details.vue b/src/pages/Details.vue index cc45e4034..8ceae1d25 100644 --- a/src/pages/Details.vue +++ b/src/pages/Details.vue @@ -133,6 +133,23 @@