horse-generator
Version:
horse generator for node framework
1 lines • 1.33 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.setup=setup;var _passport=require("passport"),_passport2=_interopRequireDefault(_passport),_passportLocal=require("passport-local");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var logger=require("../../util/logger").tag("passport");function localAuthenticate(e,r,t,l,o){e.findOne({email:t.toLowerCase()}).exec().then(function(e){if(!e)return logger.error("用户名错误",{email:t}),o(null,!1,{msg:"用户名错误!"});if("user"===e.role||!r.userRoles.includes(e.role))return logger.error("用户待激活角色",{email:t}),o(null,!1,{msg:"用户待激活角色!"});switch(e.status){case 0:return logger.error("用户待激活状态",{email:t}),o(null,!1,{msg:"用户待激活状态!"});case 2:return logger.error("用户被停用",{email:t}),o(null,!1,{msg:"用户被停用!"});case 3:return logger.error("用户被删除",{email:t}),o(null,!1,{msg:"用户被删除!"});default:return e.authenticate(l)?o(null,e):(logger.error("密码错误",{email:t}),o(null,!1,{msg:"密码错误!"}))}}).catch(function(e){logger.debug("LocalStrategy error"),o(e)})}function setup(e,r){_passport2.default.use(new _passportLocal.Strategy({usernameField:"email",passwordField:"password"},function(t,l,o){return localAuthenticate(e,r,t,l,o)}))}