From 9ea721ec290074bd4ef3d12afbfbe996a66fa6ef Mon Sep 17 00:00:00 2001 From: OldHawk Date: Tue, 4 Jul 2017 17:49:11 +0800 Subject: [PATCH] feat(users): forbid user login when banned from server --- .../users/server/config/strategies/local.js | 55 ++++++++++--------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/modules/users/server/config/strategies/local.js b/modules/users/server/config/strategies/local.js index af2db8c2..28445571 100644 --- a/modules/users/server/config/strategies/local.js +++ b/modules/users/server/config/strategies/local.js @@ -10,32 +10,33 @@ var passport = require('passport'), module.exports = function () { // Use local strategy passport.use(new LocalStrategy({ - usernameField: 'usernameOrEmail', - passwordField: 'password' - }, - function (usernameOrEmail, password, done) { - User.findOne({ - $or: [{ - username: usernameOrEmail.toLowerCase() - }, { - email: usernameOrEmail.toLowerCase() - }] - }, function (err, user) { - if (err) { - return done(err); - } - if (!user || !user.authenticate(password)) { - return done(null, false, { - message: 'Invalid username or password (' + (new Date()).toLocaleTimeString() + ')' - }); - } - if(user.status === 'banned'){ - return done(null, false, { - message: 'You are banned from the server!' - }); - } + usernameField: 'usernameOrEmail', + passwordField: 'password' + }, + function (usernameOrEmail, password, done) { + User.findOne({ + $or: [{ + username: usernameOrEmail.toLowerCase() + }, { + email: usernameOrEmail.toLowerCase() + }] + }, function (err, user) { + if (err) { + return done(err); + } + if (!user || !user.authenticate(password)) { + return done(null, false, { + message: 'Invalid username or password (' + (new Date()).toLocaleTimeString() + ')' + }); + } + if (user.status === 'banned') { + return done(null, false, { + message: 'You are banned from the server!' + }); + } - return done(null, user); - }); - })); + return done(null, user); + }); + } + )); };