mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-03 20:45:58 +01:00
added new hook for hotswap preparation
This commit is contained in:
@@ -80,13 +80,25 @@ function groupRoutes(app, middleware, controllers) {
|
||||
setupPageRoute(app, '/groups/:slug/members', middleware, middlewares, controllers.groups.members);
|
||||
}
|
||||
|
||||
module.exports = function(app, middleware) {
|
||||
var router = express.Router(),
|
||||
pluginRouter = express.Router(),
|
||||
authRouter = express.Router(),
|
||||
module.exports = function(app, middleware, hotswapIds) {
|
||||
var routers = [
|
||||
express.Router(), // plugin router
|
||||
express.Router(), // main app router
|
||||
express.Router() // auth router
|
||||
],
|
||||
router = routers[1],
|
||||
pluginRouter = routers[0],
|
||||
authRouter = routers[2],
|
||||
relativePath = nconf.get('relative_path'),
|
||||
ensureLoggedIn = require('connect-ensure-login');
|
||||
|
||||
if (Array.isArray(hotswapIds) && hotswapIds.length) {
|
||||
for(var idx,x=0;x<hotswapIds.length;x++) {
|
||||
idx = routers.push(express.Router()) - 1;
|
||||
routers[idx].hotswapId = hotswapIds[x];
|
||||
}
|
||||
}
|
||||
|
||||
pluginRouter.render = function() {
|
||||
app.render.apply(app, arguments);
|
||||
};
|
||||
@@ -119,9 +131,9 @@ module.exports = function(app, middleware) {
|
||||
userRoutes(router, middleware, controllers);
|
||||
groupRoutes(router, middleware, controllers);
|
||||
|
||||
app.use(relativePath, pluginRouter);
|
||||
app.use(relativePath, router);
|
||||
app.use(relativePath, authRouter);
|
||||
for(var x=0;x<routers.length;x++) {
|
||||
app.use(relativePath, routers[x]);
|
||||
}
|
||||
|
||||
if (process.env.NODE_ENV === 'development') {
|
||||
require('./debug')(app, middleware, controllers);
|
||||
|
||||
@@ -101,8 +101,9 @@ function initializeNodeBB(callback) {
|
||||
middleware: middleware
|
||||
}, next);
|
||||
},
|
||||
function(next) {
|
||||
routes(app, middleware);
|
||||
async.apply(plugins.fireHook, 'filter:hotswap.prepare', []),
|
||||
function(hotswapIds, next) {
|
||||
routes(app, middleware, hotswapIds);
|
||||
next();
|
||||
}
|
||||
], callback);
|
||||
|
||||
Reference in New Issue
Block a user