mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-05-07 14:56:01 +02:00
feat: allow missing (or non-array) middlewares argument in route helper methods
This commit is contained in:
@@ -4,15 +4,30 @@ const helpers = module.exports;
|
|||||||
const middleware = require('../middleware');
|
const middleware = require('../middleware');
|
||||||
const controllerHelpers = require('../controllers/helpers');
|
const controllerHelpers = require('../controllers/helpers');
|
||||||
|
|
||||||
helpers.setupPageRoute = function (router, name, middleware, middlewares, controller) {
|
function _handleArgs(middleware, middlewares, controller) {
|
||||||
|
if (typeof middlewares === 'function') {
|
||||||
|
if (controller) {
|
||||||
|
middlewares = [middlewares];
|
||||||
|
} else {
|
||||||
|
controller = middlewares;
|
||||||
|
middlewares = [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
middlewares = [
|
middlewares = [
|
||||||
middleware.maintenanceMode,
|
middleware.maintenanceMode,
|
||||||
middleware.registrationComplete,
|
middleware.registrationComplete,
|
||||||
middleware.authenticateRequest,
|
middleware.authenticateRequest,
|
||||||
middleware.pluginHooks,
|
middleware.pluginHooks,
|
||||||
middleware.pageView,
|
|
||||||
...middlewares];
|
...middlewares];
|
||||||
|
|
||||||
|
return { middlewares, controller };
|
||||||
|
}
|
||||||
|
|
||||||
|
helpers.setupPageRoute = function (router, name, middleware, middlewares, controller) {
|
||||||
|
({ middlewares, controller } = _handleArgs(middleware, middlewares, controller));
|
||||||
|
middlewares.push(middleware.pageView);
|
||||||
|
|
||||||
router.get(
|
router.get(
|
||||||
name,
|
name,
|
||||||
middleware.busyCheck,
|
middleware.busyCheck,
|
||||||
@@ -30,13 +45,7 @@ helpers.setupAdminPageRoute = function (router, name, middleware, middlewares, c
|
|||||||
};
|
};
|
||||||
|
|
||||||
helpers.setupApiRoute = function (router, verb, name, middlewares, controller) {
|
helpers.setupApiRoute = function (router, verb, name, middlewares, controller) {
|
||||||
middlewares = [
|
({ middlewares, controller } = _handleArgs(middleware, middlewares, controller));
|
||||||
middleware.maintenanceMode,
|
|
||||||
middleware.registrationComplete,
|
|
||||||
middleware.authenticateRequest,
|
|
||||||
middleware.pluginHooks,
|
|
||||||
...middlewares,
|
|
||||||
];
|
|
||||||
|
|
||||||
router[verb](name, middlewares, helpers.tryRoute(controller, (err, res) => {
|
router[verb](name, middlewares, helpers.tryRoute(controller, (err, res) => {
|
||||||
controllerHelpers.formatApiResponse(400, res, err);
|
controllerHelpers.formatApiResponse(400, res, err);
|
||||||
|
|||||||
Reference in New Issue
Block a user