diff --git a/src/inc/routes/theme.mjs b/src/inc/routes/theme.mjs new file mode 100644 index 0000000..e2b5566 --- /dev/null +++ b/src/inc/routes/theme.mjs @@ -0,0 +1,16 @@ +import cfg from "../config.mjs"; + +export default (router, tpl) => { + router.get(/^\/theme\//, async (req, res) => { + let theme = req.url.split[1] ?? cfg.websrv.themes[0]; + if(!cfg.websrv.themes.includes(theme)) + theme = cfg.websrv.themes[0]; + + return res.writeHead(301, { + "Cache-Control": "no-cache, public", + "Set-Cookie": `theme=${theme}; Path=/`, + "Location": req.headers.referer ?? "/" + }).end(); + }); + return router; +};