mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-16 10:46:14 +01:00
fix redis test for custom home page
This commit is contained in:
@@ -1,51 +1,45 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
|
var async = require('async');
|
||||||
var plugins = require('../plugins');
|
var plugins = require('../plugins');
|
||||||
var meta = require('../meta');
|
var meta = require('../meta');
|
||||||
var user = require('../user');
|
var user = require('../user');
|
||||||
var pubsub = require('../pubsub');
|
|
||||||
|
|
||||||
var adminHomePageRoute;
|
function adminHomePageRoute() {
|
||||||
var getRoute;
|
return (meta.config.homePageRoute || meta.config.homePageCustom || '').replace(/^\/+/, '') || 'categories';
|
||||||
|
|
||||||
function configUpdated() {
|
|
||||||
adminHomePageRoute = (meta.config.homePageRoute || meta.config.homePageCustom || '').replace(/^\/+/, '') || 'categories';
|
|
||||||
getRoute = parseInt(meta.config.allowUserHomePage, 10) ? getRouteAllowUserHomePage : getRouteDisableUserHomePage;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getRouteDisableUserHomePage(uid, next) {
|
function getUserHomeRoute(uid, callback) {
|
||||||
next(null, adminHomePageRoute);
|
async.waterfall([
|
||||||
}
|
function (next) {
|
||||||
|
user.getSettings(uid, next);
|
||||||
function getRouteAllowUserHomePage(uid, next) {
|
},
|
||||||
user.getSettings(uid, function (err, settings) {
|
function (settings, next) {
|
||||||
if (err) {
|
var route = adminHomePageRoute();
|
||||||
return next(err);
|
|
||||||
}
|
|
||||||
|
|
||||||
var route = adminHomePageRoute;
|
|
||||||
|
|
||||||
if (settings.homePageRoute !== 'undefined' && settings.homePageRoute !== 'none') {
|
if (settings.homePageRoute !== 'undefined' && settings.homePageRoute !== 'none') {
|
||||||
route = settings.homePageRoute || route;
|
route = settings.homePageRoute || route;
|
||||||
}
|
}
|
||||||
|
|
||||||
next(null, route);
|
next(null, route);
|
||||||
});
|
},
|
||||||
|
], callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
pubsub.on('config:update', configUpdated);
|
|
||||||
configUpdated();
|
|
||||||
|
|
||||||
function rewrite(req, res, next) {
|
function rewrite(req, res, next) {
|
||||||
if (req.path !== '/' && req.path !== '/api/' && req.path !== '/api') {
|
if (req.path !== '/' && req.path !== '/api/' && req.path !== '/api') {
|
||||||
return next();
|
return next();
|
||||||
}
|
}
|
||||||
|
|
||||||
getRoute(req.uid, function (err, route) {
|
async.waterfall([
|
||||||
if (err) {
|
function (next) {
|
||||||
return next(err);
|
if (parseInt(meta.config.allowUserHomePage, 10)) {
|
||||||
|
getUserHomeRoute(req.uid, next);
|
||||||
|
} else {
|
||||||
|
next(null, adminHomePageRoute());
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
function (route, next) {
|
||||||
var hook = 'action:homepage.get:' + route;
|
var hook = 'action:homepage.get:' + route;
|
||||||
|
|
||||||
if (!plugins.hasListeners(hook)) {
|
if (!plugins.hasListeners(hook)) {
|
||||||
@@ -55,7 +49,8 @@ function rewrite(req, res, next) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
next();
|
next();
|
||||||
});
|
},
|
||||||
|
], next);
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.rewrite = rewrite;
|
exports.rewrite = rewrite;
|
||||||
|
|||||||
Reference in New Issue
Block a user