| 9 | var middleware = module.exports |
| 10 | |
| 11 | var checkAuthToken = function (authToken) { |
| 12 | var objToken = security.parseToken(authToken); |
| 13 | return models.Users.findOne({ |
| 14 | where: {identical: objToken.identical} |
| 15 | }) |
| 16 | .then((users) => { |
| 17 | if (_.isEmpty(users)) { |
| 18 | throw new AppError.Unauthorized(); |
| 19 | } |
| 20 | var Sequelize = require('sequelize'); |
| 21 | return models.UserTokens.findOne({ |
| 22 | where: {tokens: authToken, uid: users.id, expires_at: { [Sequelize.Op.gt]: moment().format('YYYY-MM-DD HH:mm:ss') }} |
| 23 | }) |
| 24 | .then((tokenInfo) => { |
| 25 | if (_.isEmpty(tokenInfo)){ |
| 26 | throw new AppError.Unauthorized() |
| 27 | } |
| 28 | return users; |
| 29 | }) |
| 30 | }).then((users) => { |
| 31 | return users; |
| 32 | }) |
| 33 | } |
| 34 | |
| 35 | var checkAccessToken = function (accessToken) { |
| 36 | return new Promise((resolve, reject) => { |