From cdb8ad321dbdce48d5baa47970da5b5d1de43df1 Mon Sep 17 00:00:00 2001 From: Luke Thomas <96008479+Zoobdude@users.noreply.github.com> Date: Tue, 26 Nov 2024 00:56:23 +0000 Subject: [PATCH 1/2] fix: slug input (#5239) Co-authored-by: Frank Elsinga --- server/routers/status-page-router.js | 8 +++++++- server/socket-handlers/status-page-socket-handler.js | 1 + src/pages/AddStatusPage.vue | 11 ++++++----- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/server/routers/status-page-router.js b/server/routers/status-page-router.js index b209d33d1..893f57564 100644 --- a/server/routers/status-page-router.js +++ b/server/routers/status-page-router.js @@ -15,11 +15,13 @@ const server = UptimeKumaServer.getInstance(); router.get("/status/:slug", cache("5 minutes"), async (request, response) => { let slug = request.params.slug; + slug = slug.toLowerCase(); await StatusPage.handleStatusPageResponse(response, server.indexHTML, slug); }); router.get("/status/:slug/rss", cache("5 minutes"), async (request, response) => { let slug = request.params.slug; + slug = slug.toLowerCase(); await StatusPage.handleStatusPageRSSResponse(response, slug); }); @@ -37,6 +39,7 @@ router.get("/status-page", cache("5 minutes"), async (request, response) => { router.get("/api/status-page/:slug", cache("5 minutes"), async (request, response) => { allowDevAllOrigin(response); let slug = request.params.slug; + slug = slug.toLowerCase(); try { // Get Status Page @@ -69,6 +72,7 @@ router.get("/api/status-page/heartbeat/:slug", cache("1 minutes"), async (reques let uptimeList = {}; let slug = request.params.slug; + slug = slug.toLowerCase(); let statusPageID = await StatusPage.slugToID(slug); let monitorIDList = await R.getCol(` @@ -111,6 +115,7 @@ router.get("/api/status-page/heartbeat/:slug", cache("1 minutes"), async (reques router.get("/api/status-page/:slug/manifest.json", cache("1440 minutes"), async (request, response) => { allowDevAllOrigin(response); let slug = request.params.slug; + slug = slug.toLowerCase(); try { // Get Status Page @@ -145,7 +150,8 @@ router.get("/api/status-page/:slug/manifest.json", cache("1440 minutes"), async // overall status-page status badge router.get("/api/status-page/:slug/badge", cache("5 minutes"), async (request, response) => { allowDevAllOrigin(response); - const slug = request.params.slug; + let slug = request.params.slug; + slug = slug.toLowerCase(); const statusPageID = await StatusPage.slugToID(slug); const { label, diff --git a/server/socket-handlers/status-page-socket-handler.js b/server/socket-handlers/status-page-socket-handler.js index cbcc52b8f..1114d81fd 100644 --- a/server/socket-handlers/status-page-socket-handler.js +++ b/server/socket-handlers/status-page-socket-handler.js @@ -292,6 +292,7 @@ module.exports.statusPageSocketHandler = (socket) => { ok: true, msg: "successAdded", msgi18n: true, + slug: slug }); } catch (error) { diff --git a/src/pages/AddStatusPage.vue b/src/pages/AddStatusPage.vue index bae61449c..b35091cc2 100644 --- a/src/pages/AddStatusPage.vue +++ b/src/pages/AddStatusPage.vue @@ -16,14 +16,11 @@
/status/ - +