diff --git a/core/model/Account.coffee b/core/model/Account.coffee index f47c82a..86f7977 100644 --- a/core/model/Account.coffee +++ b/core/model/Account.coffee @@ -84,3 +84,11 @@ module.exports = class Account extends Model email: email , (result) -> callback result + + @byUsernameOrEmail: (username) -> + Account.byUsername username, (account) -> + if account + return callback account + + Account.byEmail username, (account) -> + return callback account diff --git a/core/router/account.coffee b/core/router/account.coffee index 391cd6d..4c00e30 100644 --- a/core/router/account.coffee +++ b/core/router/account.coffee @@ -46,16 +46,7 @@ module.exports = login: (req, res) -> data = req.body - # @param callback(account) - getAccount = (callback) -> - Account.byUsername data.username, (account) -> - if account - return callback account - - Account.byEmail data.email, (account) -> - return callback account - - getAccount (account) -> + Account.byUsernameOrEmail data.username, (account) -> unless account return res.json 400, error: 'auth_failed'