diff --git a/src/plugins/packages/themes.js b/src/plugins/packages/themes.js index f6da6f5c..a32950b4 100644 --- a/src/plugins/packages/themes.js +++ b/src/plugins/packages/themes.js @@ -14,7 +14,7 @@ module.exports = { }; function loadLocalThemes() { - fs.readdir(path.join(__dirname, "..", "..", "public", "themes"), (err, builtInThemes) => { + fs.readdir(path.join(__dirname, "..", "..", "..", "public", "themes"), (err, builtInThemes) => { if (err) { return; } @@ -46,7 +46,6 @@ function makeLocalThemeObject(css) { const themeName = css.slice(0, -4); return { displayName: themeName.charAt(0).toUpperCase() + themeName.slice(1), - filename: path.join(__dirname, "..", "..", "public", "themes", `${themeName}.css`), name: themeName, }; } diff --git a/src/server.js b/src/server.js index 1087fc48..7a5c8333 100644 --- a/src/server.js +++ b/src/server.js @@ -48,6 +48,10 @@ module.exports = function() { maxAge: 86400 * 1000, })); + // This route serves *installed themes only*. Local themes are served directly + // from the `public/themes/` folder as static assets, without entering this + // handler. Remember this is you make changes to this function, serving of + // local themes will not get those changes. app.get("/themes/:theme.css", (req, res) => { const themeName = req.params.theme; const theme = themes.getFilename(themeName);