diff --git a/src/app.ts b/src/app.ts index 13106ac..c61a3a2 100644 --- a/src/app.ts +++ b/src/app.ts @@ -60,6 +60,8 @@ import { getReady } from "./routes/getReady"; import { getMetrics } from "./routes/getMetrics"; import { getSegmentID } from "./routes/getSegmentID"; import { postCasual } from "./routes/postCasual"; +import { getConfigEndpoint } from "./routes/getConfig"; +import { setConfig } from "./routes/setConfig"; export function createServer(callback: () => void): Server { // Create a service (the app object is just a callback). @@ -235,6 +237,9 @@ function setupRoutes(router: Router, server: Server) { router.get("/api/branding/:prefix", getBrandingByHashEndpoint); router.post("/api/branding", postBranding); + router.get("/api/config", getConfigEndpoint); + router.get("/api/config", setConfig); + router.post("/api/casual", postCasual); /* istanbul ignore next */ diff --git a/src/routes/getConfig.ts b/src/routes/getConfig.ts index 9f18549..335f460 100644 --- a/src/routes/getConfig.ts +++ b/src/routes/getConfig.ts @@ -1,11 +1,11 @@ import { getHashCache } from "../utils/getHashCache"; -import { db } from "../databases/databases"; import { Request, Response } from "express"; import { isUserVIP } from "../utils/isUserVIP"; import { UserID } from "../types/user.model"; import { Logger } from "../utils/logger"; +import { getServerConfig } from "../utils/serverConfig"; -export async function getConfig(req: Request, res: Response): Promise { +export async function getConfigEndpoint(req: Request, res: Response): Promise { const userID = req.query.userID as string; const key = req.query.key as string; @@ -24,10 +24,8 @@ export async function getConfig(req: Request, res: Response): Promise } try { - const row = await db.prepare("run", `SELECT "value" FROM "config" WHERE "key" = ?`, [key]); - return res.status(200).json({ - value: row.value + value: getServerConfig(key) }); } catch (e) { Logger.error(e as string); diff --git a/src/utils/serverConfig.ts b/src/utils/serverConfig.ts new file mode 100644 index 0000000..6ba2627 --- /dev/null +++ b/src/utils/serverConfig.ts @@ -0,0 +1,7 @@ +import { db } from "../databases/databases"; + +export async function getServerConfig(key: string): Promise { + const row = await db.prepare("run", `SELECT "value" FROM "config" WHERE "key" = ?`, [key]); + + return row?.value ?? null; +} \ No newline at end of file