mirror of
				https://github.com/NodeBB/NodeBB.git
				synced 2025-10-31 02:55:58 +01:00 
			
		
		
		
	refactor: changed way middleware was exported
This commit is contained in:
		| @@ -18,13 +18,15 @@ var controllers = { | |||||||
| 	helpers: require('../controllers/helpers'), | 	helpers: require('../controllers/helpers'), | ||||||
| }; | }; | ||||||
|  |  | ||||||
| module.exports.buildHeader = helpers.try(async function (req, res, next) { | const middleware = module.exports; | ||||||
|  |  | ||||||
|  | middleware.buildHeader = helpers.try(async function (req, res, next) { | ||||||
| 	res.locals.renderAdminHeader = true; | 	res.locals.renderAdminHeader = true; | ||||||
| 	res.locals.config = await controllers.api.loadConfig(req); | 	res.locals.config = await controllers.api.loadConfig(req); | ||||||
| 	next(); | 	next(); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| module.exports.renderHeader = async (req, res, data) => { | middleware.renderHeader = async (req, res, data) => { | ||||||
| 	var custom_header = { | 	var custom_header = { | ||||||
| 		plugins: [], | 		plugins: [], | ||||||
| 		authentication: [], | 		authentication: [], | ||||||
| @@ -96,11 +98,11 @@ async function getLatestVersion() { | |||||||
| 	return null; | 	return null; | ||||||
| } | } | ||||||
|  |  | ||||||
| module.exports.renderFooter = async function (req, res, data) { | middleware.renderFooter = async function (req, res, data) { | ||||||
| 	return await req.app.renderAsync('admin/footer', data); | 	return await req.app.renderAsync('admin/footer', data); | ||||||
| }; | }; | ||||||
|  |  | ||||||
| module.exports.checkPrivileges = async (req, res, next) => { | middleware.checkPrivileges = async (req, res, next) => { | ||||||
| 	// Kick out guests, obviously | 	// Kick out guests, obviously | ||||||
| 	if (!req.uid) { | 	if (!req.uid) { | ||||||
| 		return controllers.helpers.notAllowed(req, res); | 		return controllers.helpers.notAllowed(req, res); | ||||||
|   | |||||||
| @@ -24,8 +24,9 @@ var controllers = { | |||||||
| 	helpers: require('../controllers/helpers'), | 	helpers: require('../controllers/helpers'), | ||||||
| }; | }; | ||||||
|  |  | ||||||
| module.exports = function (middleware) { | const middleware = module.exports; | ||||||
| 	middleware.buildHeader = helpers.try(async function buildHeader(req, res, next) { |  | ||||||
|  | middleware.buildHeader = helpers.try(async function buildHeader(req, res, next) { | ||||||
| 	res.locals.renderHeader = true; | 	res.locals.renderHeader = true; | ||||||
| 	res.locals.isAPI = false; | 	res.locals.isAPI = false; | ||||||
| 	const [config] = await Promise.all([ | 	const [config] = await Promise.all([ | ||||||
| @@ -34,11 +35,11 @@ module.exports = function (middleware) { | |||||||
| 	]); | 	]); | ||||||
| 	res.locals.config = config; | 	res.locals.config = config; | ||||||
| 	next(); | 	next(); | ||||||
| 	}); | }); | ||||||
|  |  | ||||||
| 	middleware.buildHeaderAsync = util.promisify(middleware.buildHeader); | middleware.buildHeaderAsync = util.promisify(middleware.buildHeader); | ||||||
|  |  | ||||||
| 	async function generateHeader(req, res, data) { | async function generateHeader(req, res, data) { | ||||||
| 	var registrationType = meta.config.registrationType || 'normal'; | 	var registrationType = meta.config.registrationType || 'normal'; | ||||||
| 	res.locals.config = res.locals.config || {}; | 	res.locals.config = res.locals.config || {}; | ||||||
| 	var templateValues = { | 	var templateValues = { | ||||||
| @@ -175,13 +176,13 @@ module.exports = function (middleware) { | |||||||
| 	}); | 	}); | ||||||
|  |  | ||||||
| 	return hookReturn.templateValues; | 	return hookReturn.templateValues; | ||||||
| 	} | } | ||||||
|  |  | ||||||
| 	middleware.renderHeader = async function renderHeader(req, res, data) { | middleware.renderHeader = async function renderHeader(req, res, data) { | ||||||
| 	return await req.app.renderAsync('header', await generateHeader(req, res, data)); | 	return await req.app.renderAsync('header', await generateHeader(req, res, data)); | ||||||
| 	}; | }; | ||||||
|  |  | ||||||
| 	middleware.renderFooter = async function renderFooter(req, res, templateValues) { | middleware.renderFooter = async function renderFooter(req, res, templateValues) { | ||||||
| 	const data = await plugins.fireHook('filter:middleware.renderFooter', { | 	const data = await plugins.fireHook('filter:middleware.renderFooter', { | ||||||
| 		req: req, | 		req: req, | ||||||
| 		res: res, | 		res: res, | ||||||
| @@ -215,9 +216,9 @@ module.exports = function (middleware) { | |||||||
| 	data.templateValues.isSpider = req.uid === -1; | 	data.templateValues.isSpider = req.uid === -1; | ||||||
|  |  | ||||||
| 	return await req.app.renderAsync('footer', data.templateValues); | 	return await req.app.renderAsync('footer', data.templateValues); | ||||||
| 	}; | }; | ||||||
|  |  | ||||||
| 	function modifyTitle(obj) { | function modifyTitle(obj) { | ||||||
| 	var title = controllers.helpers.buildTitle(meta.config.homePageTitle || '[[pages:home]]'); | 	var title = controllers.helpers.buildTitle(meta.config.homePageTitle || '[[pages:home]]'); | ||||||
| 	obj.browserTitle = title; | 	obj.browserTitle = title; | ||||||
|  |  | ||||||
| @@ -230,5 +231,4 @@ module.exports = function (middleware) { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	return title; | 	return title; | ||||||
| 	} | } | ||||||
| }; |  | ||||||
|   | |||||||
| @@ -51,8 +51,10 @@ middleware.applyCSRF = function (req, res, next) { | |||||||
|  |  | ||||||
| middleware.ensureLoggedIn = ensureLoggedIn.ensureLoggedIn(nconf.get('relative_path') + '/login'); | middleware.ensureLoggedIn = ensureLoggedIn.ensureLoggedIn(nconf.get('relative_path') + '/login'); | ||||||
|  |  | ||||||
| middleware.admin = require('./admin'); | Object.assign(middleware, { | ||||||
| require('./header')(middleware); | 	admin: require('./admin'), | ||||||
|  | 	...require('./header'), | ||||||
|  | }); | ||||||
| require('./render')(middleware); | require('./render')(middleware); | ||||||
| require('./maintenance')(middleware); | require('./maintenance')(middleware); | ||||||
| require('./user')(middleware); | require('./user')(middleware); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user