UNPKG

annie-node-webapp-user

Version:
28 lines (25 loc) 975 B
var annieUtils = require("annie-node-utils"); var emailValidator = annieUtils.createEmailAddressValidator(); function LoginBuz(userDao) { this.login = async function(req) { if (!req.username) { throw new Error("username is empty.") } if (!req.password) { throw new Error("password is empty.") } var user = await userDao.getUserByName(req.username);; if (null == user) user = await userDao.getUserByEmail(req.username); if (null == user) throw new Error("username not exists."); var password = req.password + "@" + user.salt; password = annieUtils.hash.computeMD5(password); if (password != user.password) throw new Error("password is incorrect."); return { status: true, username:user.username, sessionId: annieUtils.rand.randString(16) } } } module.exports = LoginBuz;