mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 08:36:12 +01:00
fix: is user doesnt have view:users privilege
dont redirect uid/1 to userslug
This commit is contained in:
@@ -203,8 +203,12 @@ module.exports = function (middleware) {
|
||||
if (uid <= 0) {
|
||||
return next();
|
||||
}
|
||||
const userslug = await user.getUserField(uid, 'userslug');
|
||||
if (!userslug) {
|
||||
const [canView, userslug] = await Promise.all([
|
||||
privileges.global.can('view:users', req.uid),
|
||||
user.getUserField(uid, 'userslug'),
|
||||
]);
|
||||
|
||||
if (!userslug || (!canView && req.uid !== uid)) {
|
||||
return next();
|
||||
}
|
||||
const path = req.url.replace(/^\/api/, '')
|
||||
|
||||
@@ -5,7 +5,11 @@ const helpers = require('./helpers');
|
||||
const { setupPageRoute } = helpers;
|
||||
|
||||
module.exports = function (app, name, middleware, controllers) {
|
||||
const middlewares = [middleware.exposeUid, middleware.canViewUsers, middleware.buildAccountData];
|
||||
const middlewares = [
|
||||
middleware.exposeUid,
|
||||
middleware.canViewUsers,
|
||||
middleware.buildAccountData,
|
||||
];
|
||||
const accountMiddlewares = [
|
||||
...middlewares,
|
||||
middleware.ensureLoggedIn,
|
||||
|
||||
Reference in New Issue
Block a user