diff options
| author | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-07-24 20:06:17 +0100 |
|---|---|---|
| committer | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-07-24 20:06:17 +0100 |
| commit | eb719a5416391521d536980e974f97b7ac8b78e3 (patch) | |
| tree | 50867dedfe62c5d0e429e71d2000eeeba74cba05 /174bg/database/volumes/pocketbase | |
| parent | 5cae0bed9d2504f1c644ee6f3a27e570f9ceeb03 (diff) | |
| download | unnamed-group-eb719a5416391521d536980e974f97b7ac8b78e3.tar unnamed-group-eb719a5416391521d536980e974f97b7ac8b78e3.tar.gz unnamed-group-eb719a5416391521d536980e974f97b7ac8b78e3.tar.bz2 unnamed-group-eb719a5416391521d536980e974f97b7ac8b78e3.tar.xz unnamed-group-eb719a5416391521d536980e974f97b7ac8b78e3.zip | |
stats page
Diffstat (limited to '174bg/database/volumes/pocketbase')
4 files changed, 51 insertions, 1 deletions
diff --git a/174bg/database/volumes/pocketbase/pb_hooks/heartbeat.pb.js b/174bg/database/volumes/pocketbase/pb_hooks/heartbeat.pb.js index b7d385d..5579777 100644 --- a/174bg/database/volumes/pocketbase/pb_hooks/heartbeat.pb.js +++ b/174bg/database/volumes/pocketbase/pb_hooks/heartbeat.pb.js @@ -1,4 +1,4 @@ -routerAdd("GET", "/heartbeat", (e) => { +routerAdd("GET", "/api/heartbeat", (e) => { try { const result = new DynamicModel({ "value": nullString(), diff --git a/174bg/database/volumes/pocketbase/pb_hooks/stats.pb.js b/174bg/database/volumes/pocketbase/pb_hooks/stats.pb.js new file mode 100644 index 0000000..e2b6ab3 --- /dev/null +++ b/174bg/database/volumes/pocketbase/pb_hooks/stats.pb.js @@ -0,0 +1,14 @@ +routerAdd("get", "/stats", (e) => { + const heartbeat = $http.send({ + url: "https://db.174bg.net/api/heartbeat", + headers: { "content-type": "application/json" } + }) + + return e.html(200, $template.loadFiles( + `${__hooks}/views/_layout.html`, + `${__hooks}/views/stats.html`, + ).render({ + "timeDifference": heartbeat.json.timeDifference, + "withinThreshold": heartbeat.json.withinThreshold, + })) +})
\ No newline at end of file diff --git a/174bg/database/volumes/pocketbase/pb_hooks/views/_layout.html b/174bg/database/volumes/pocketbase/pb_hooks/views/_layout.html new file mode 100644 index 0000000..4771057 --- /dev/null +++ b/174bg/database/volumes/pocketbase/pb_hooks/views/_layout.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <title>{{block "title" .}}Default app title{{end}}</title> +</head> +<body> + {{block "body" .}} + Default app body... + {{end}} +</body> +</html>
\ No newline at end of file diff --git a/174bg/database/volumes/pocketbase/pb_hooks/views/stats.html b/174bg/database/volumes/pocketbase/pb_hooks/views/stats.html new file mode 100644 index 0000000..b59c1a7 --- /dev/null +++ b/174bg/database/volumes/pocketbase/pb_hooks/views/stats.html @@ -0,0 +1,25 @@ +{{define "title"}} + stats +{{end}} + +{{define "body"}} + <p id="timeDifference">Time Difference: {{.timeDifference}}</p> + <p id="withinThreshold">Within Threshold: {{.withinThreshold}}</p> + + <script> + window.addEventListener("load", () => { + setInterval(fetchStats, 100); + }); + + async function fetchStats() { + let heartbeat = await fetch("/api/heartbeat"); + heartbeat = await heartbeat.json(); + + const timeDifference = heartbeat.timeDifference; + const withinThreshold = heartbeat.withinThreshold; + + document.getElementById("timeDifference").textContent = `Time Difference: ${timeDifference}`; + document.getElementById("withinThreshold").textContent = `Within Threshold: ${withinThreshold}`; + } + </script> +{{end}}
\ No newline at end of file |
