Авторизация
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
var mongoose = require('mongoose');
var event = require('events').EventEmitter;
passport.Events = new event();
passport.use(new LocalStrategy(
function(username, password, done) {
username = (username+'').toLowerCase().trim();
mongoose.model('user').findOne({ LoginUser: username }).isactive().exec(function (err, user) {
if (err) {
return passport.Events.emit('localauth',{status:"error",message:err,username:username});
}
if (!user) {
return passport.Events.emit('localauth',{status:"error",message:"wrongusername",username:username});
}
if (!user.IsConfirmed) {
return passport.Events.emit('localauth',{status:"error",message:"notconfirmed",username:username});
}
if (!user.checkPassword(password)) {//
return passport.Events.emit('localauth',{status:"error",message:"wrongpassword",username:username});
}
passport.Events.emit('localauth',{status:"success",user:user._id,username:username});
});
}
));
module.exports = passport;Last updated