diff --git a/routes/oneauth.js b/routes/oneauth.js index 21c963ce..abd618c6 100644 --- a/routes/oneauth.js +++ b/routes/oneauth.js @@ -22,6 +22,10 @@ router.get('/login', (req, res, next) => { } OneAuth.addAuthTokenToDb(grantCode).then((result) => { //TODO: Handle the case when grant_code is wrong + if(!result.verifiedEmail) { + res.status(405).json({error: "Unverified Email"}); + return; + } if (process.env.NODE_ENV === "production") { if (req.headers.referer.startsWith('https://hack.codingblocks.com/admin') && result.user.role_id !== 1 && result.user.role_id !== 3) { diff --git a/services/oneauth.js b/services/oneauth.js index 91a94436..7aa476bf 100644 --- a/services/oneauth.js +++ b/services/oneauth.js @@ -15,11 +15,12 @@ const Raven = require ('raven'); const addAuthTokenToDb = function(grant_code) { - let authToken, oauthId; + let authToken, oauthId, verifiedEmail; return OneAuthRepo.getAuthToken(grant_code).then((result) => { authToken = result.access_token; return OneAuthRepo.getUserDetails(authToken); }).then(result => { + verifiedEmail = result.verifiedemail; let userObj = {}; oauthId = userObj.oauth_id = result.id; userObj.access_token = authToken; @@ -52,7 +53,7 @@ const addAuthTokenToDb = function(grant_code) { Raven.captureException (err) }); } - return {authToken, oauthId, user: result, refreshToken: session.refreshToken}; + return {authToken, oauthId, user: result, refreshToken: session.refreshToken, verifiedEmail}; }); };