2015-10-11 23:05:33 -04:00
|
|
|
'use strict';
|
|
|
|
|
|
2021-01-16 12:54:11 -05:00
|
|
|
const plugins = require('../plugins');
|
|
|
|
|
const helpers = require('./helpers');
|
|
|
|
|
|
|
|
|
|
const controllers = {
|
2015-10-11 23:05:33 -04:00
|
|
|
api: require('../controllers/api'),
|
|
|
|
|
};
|
|
|
|
|
|
2020-08-21 15:29:40 -04:00
|
|
|
const middleware = module.exports;
|
|
|
|
|
|
2021-02-04 00:01:39 -07:00
|
|
|
middleware.buildHeader = helpers.try(async (req, res, next) => {
|
2023-10-22 16:15:28 -04:00
|
|
|
await doBuildHeader(req, res);
|
|
|
|
|
next();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
middleware.buildHeaderAsync = async (req, res) => {
|
|
|
|
|
await doBuildHeader(req, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
async function doBuildHeader(req, res) {
|
2020-08-21 15:29:40 -04:00
|
|
|
res.locals.renderHeader = true;
|
|
|
|
|
res.locals.isAPI = false;
|
2021-11-28 07:31:09 -05:00
|
|
|
if (req.method === 'GET') {
|
|
|
|
|
await require('./index').applyCSRFasync(req, res);
|
|
|
|
|
}
|
2023-01-10 11:08:29 -05:00
|
|
|
|
2023-01-13 10:04:58 -05:00
|
|
|
await plugins.hooks.fire('filter:middleware.buildHeader', { req: req, locals: res.locals });
|
2023-12-13 13:18:07 -05:00
|
|
|
res.locals.config = await controllers.api.loadConfig(req);
|
2023-10-22 16:15:28 -04:00
|
|
|
}
|