Server: remove useless hash affectations
[oweals/peertube.git] / server / middlewares / oauth.js
1 'use strict'
2
3 const OAuthServer = require('express-oauth-server')
4
5 const constants = require('../initializers/constants')
6 const logger = require('../helpers/logger')
7
8 const oAuthServer = new OAuthServer({
9   accessTokenLifetime: constants.OAUTH_LIFETIME.ACCESS_TOKEN,
10   refreshTokenLifetime: constants.OAUTH_LIFETIME.REFRESH_TOKEN,
11   model: require('../lib/oauth-model')
12 })
13
14 const oAuth = {
15   authenticate,
16   token
17 }
18
19 function authenticate (req, res, next) {
20   oAuthServer.authenticate()(req, res, function (err) {
21     if (err) {
22       logger.error('Cannot authenticate.', { error: err })
23       return res.sendStatus(500)
24     }
25
26     if (res.statusCode === 401 || res.statusCode === 400 || res.statusCode === 503) return res.end()
27
28     return next()
29   })
30 }
31
32 function token (req, res, next) {
33   return oAuthServer.token()(req, res, next)
34 }
35
36 // ---------------------------------------------------------------------------
37
38 module.exports = oAuth