feat: allow middlewares to pass in template values via res.locals

This commit is contained in:
Julian Lam
2023-01-20 16:05:07 -05:00
parent df66f71cfc
commit 3d287c1e0c

View File

@@ -144,6 +144,7 @@ module.exports = function (middleware) {
relative_path,
bodyClass: options.bodyClass,
widgets: options.widgets,
...(res.locals.templateValues || {}),
};
templateValues.configJSON = jsesc(JSON.stringify(res.locals.config), { isScriptContext: true });
@@ -276,6 +277,7 @@ module.exports = function (middleware) {
latestVersion: results.latestVersion,
upgradeAvailable: results.latestVersion && semver.gt(results.latestVersion, version),
showManageMenu: results.privileges.superadmin || ['categories', 'privileges', 'users', 'admins-mods', 'groups', 'tags', 'settings'].some(priv => results.privileges[`admin:${priv}`]),
...(res.locals.templateValues || {}),
};
templateValues.template = { name: res.locals.template };