LOGIN: Accessing by Username or Email
This commit is contained in:
@@ -10,7 +10,9 @@ mongoose.Promise = global.Promise;
|
||||
|
||||
mongoose.level = "F";
|
||||
// Resolving error Unknown modifier: $pushAll
|
||||
mongoose.plugin(schema => { schema.options.usePushEach = true });
|
||||
mongoose.plugin(schema => {
|
||||
schema.options.usePushEach = true
|
||||
});
|
||||
|
||||
mongoose.set('debug', process.env.DEBUG);
|
||||
|
||||
@@ -102,7 +104,9 @@ UserSchema.methods.generateAuthToken = function (req) {
|
||||
var date_login = new Date();
|
||||
|
||||
// CANCELLA IL PRECEDENTE !
|
||||
user.tokens = user.tokens.filter(function(tok) { return (tok.access !== access) || ((tok.access === access) && (tok.browser !== browser) ) ; });
|
||||
user.tokens = user.tokens.filter(function (tok) {
|
||||
return (tok.access !== access) || ((tok.access === access) && (tok.browser !== browser));
|
||||
});
|
||||
user.tokens.push({ access, browser, token, date_login });
|
||||
|
||||
return user.save()
|
||||
@@ -154,8 +158,15 @@ UserSchema.statics.findByCredentials = function (username, password) {
|
||||
|
||||
return User.findOne({ username: username }).then((user) => {
|
||||
if (!user) {
|
||||
return null;
|
||||
// Check if with email:
|
||||
return User.findOne({ email: username })
|
||||
} else {
|
||||
return user
|
||||
}
|
||||
}).then(user => {
|
||||
if (!user)
|
||||
return null;
|
||||
|
||||
pwd = user.password;
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
|
||||
Reference in New Issue
Block a user