From a2d6183fc4c3101e81027fcd504cd4e525c5a711 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 05:56:22 +0100 Subject: [PATCH 1/9] test heroku review --- src/controllers/Auth.js | 1 + src/controllers/Trip.js | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/controllers/Auth.js b/src/controllers/Auth.js index 5a2c3f0..ed7fe53 100644 --- a/src/controllers/Auth.js +++ b/src/controllers/Auth.js @@ -48,6 +48,7 @@ const Auth = { * @returns {object} user object */ async login(req, res) { + console.log(req.body); const userQuery = 'SELECT * FROM Users WHERE email = $1'; const { email, password } = req.body; try { diff --git a/src/controllers/Trip.js b/src/controllers/Trip.js index e6ade2c..dbf036b 100644 --- a/src/controllers/Trip.js +++ b/src/controllers/Trip.js @@ -52,6 +52,7 @@ const Trip = { * @returns {object} response object */ async create(req, res) { + console.log(req.body); const { bus_id, origin, destination, trip_date, fare } = req.body; @@ -80,6 +81,7 @@ const Trip = { * @returns {object} response object */ async getTrips(req, res) { + console.log(req.body); try { const findAllQuery = 'SELECT * FROM Trips'; const { rows } = await db.query(findAllQuery); From c7961c2f62dd7e3c45d8aae3e83b2a1feda478a0 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 06:34:16 +0100 Subject: [PATCH 2/9] testing testing testing --- src/controllers/Auth.js | 1 + src/helpers/utils.js | 14 ++++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/controllers/Auth.js b/src/controllers/Auth.js index ed7fe53..8f776df 100644 --- a/src/controllers/Auth.js +++ b/src/controllers/Auth.js @@ -11,6 +11,7 @@ import { const Auth = { async create(req, res) { + console.log(req.body); const { // eslint-disable-next-line camelcase email, first_name, last_name, password, userType diff --git a/src/helpers/utils.js b/src/helpers/utils.js index fcb3a4f..1e0fb50 100644 --- a/src/helpers/utils.js +++ b/src/helpers/utils.js @@ -80,7 +80,7 @@ export const createToken = (id, isAdmin) => { }, process.env.SECRET, { expiresIn: '7d' } ); - return token; + return `Bearer ${token}`; }; /** @@ -91,10 +91,11 @@ export const createToken = (id, isAdmin) => { * @returns {Object} response object */ export const hasToken = async (req, res, next) => { - const token = req.body.token || req.headers['x-access-token']; + const token = req.body.token || req.headers['x-access-token'] || req.headers.Authorization; try { + const noBearer = token.replace(/Bearer\s/gi, ''); if (token) { - const decoded = await jwt.verify(token, process.env.SECRET); + const decoded = await jwt.verify(noBearer, process.env.SECRET); const text = 'SELECT * FROM Users WHERE id = $1'; const { rows } = await db.query(text, [decoded.id]); if (!rows[0]) { @@ -110,16 +111,17 @@ export const hasToken = async (req, res, next) => { }; /** - * @method hasToken + * @method isAdmin * @param {*} req * @param {*} res * @param {*} next * @returns {Object} response object */ export const isAdmin = async (req, res, next) => { - const token = req.body.token || req.headers['x-access-token']; + const token = req.body.token || req.headers['x-access-token'] || req.headers.Authorization; try { - const decoded = await jwt.verify(token, process.env.SECRET); + const noBearer = token.replace(/Bearer\s/gi, ''); + const decoded = await jwt.verify(noBearer, process.env.SECRET); if (req.body.is_admin) { return next(); } From 3c9914b5eb0b4e06cb3c13bcd6d90ef443aeb569 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 06:39:52 +0100 Subject: [PATCH 3/9] change to lowercase --- src/controllers/Auth.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/Auth.js b/src/controllers/Auth.js index 8f776df..b50a293 100644 --- a/src/controllers/Auth.js +++ b/src/controllers/Auth.js @@ -53,7 +53,7 @@ const Auth = { const userQuery = 'SELECT * FROM Users WHERE email = $1'; const { email, password } = req.body; try { - const { rows } = await db.query(userQuery, [email]); + const { rows } = await db.query(userQuery, [email.trim().toLowerCase()]); if (!rows[0]) { return handleServerResponseError(res, 404, 'Account with Email not found'); } From 0128b0d61c78d1d4f20b3e55e0a736ead031c39d Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 06:47:27 +0100 Subject: [PATCH 4/9] hey hey hey --- src/helpers/utils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/helpers/utils.js b/src/helpers/utils.js index 1e0fb50..03a073a 100644 --- a/src/helpers/utils.js +++ b/src/helpers/utils.js @@ -80,7 +80,7 @@ export const createToken = (id, isAdmin) => { }, process.env.SECRET, { expiresIn: '7d' } ); - return `Bearer ${token}`; + return token; }; /** From 5a8ee6eee32b1a68ddc6d923a6842388e8feee4b Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 07:05:29 +0100 Subject: [PATCH 5/9] log that error --- src/helpers/utils.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/helpers/utils.js b/src/helpers/utils.js index 03a073a..eb22fa5 100644 --- a/src/helpers/utils.js +++ b/src/helpers/utils.js @@ -32,10 +32,13 @@ export const handleServerResponse = (response, status, data) => response.status( * @returns {*} error response */ // eslint-disable-next-line max-len -export const handleServerResponseError = (response, status, message) => response.status(status).send({ +export const handleServerResponseError = (response, status, message) => { + logger().error(message); + return response.status(status).send({ status: 'error', error: message -}); + }); +}; export const handleServerError = (res, error) => { logger().error(error); From c1d9b79c600c678008944ca4bebe22781b53225e Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 07:06:11 +0100 Subject: [PATCH 6/9] indent that baby --- src/helpers/utils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/helpers/utils.js b/src/helpers/utils.js index eb22fa5..b6e1af3 100644 --- a/src/helpers/utils.js +++ b/src/helpers/utils.js @@ -35,8 +35,8 @@ export const handleServerResponse = (response, status, data) => response.status( export const handleServerResponseError = (response, status, message) => { logger().error(message); return response.status(status).send({ - status: 'error', - error: message + status: 'error', + error: message }); }; From 146d2a7d71556a6cca2f94f8c24bce0eddb1c196 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 07:10:57 +0100 Subject: [PATCH 7/9] fix it baby --- src/helpers/utils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/helpers/utils.js b/src/helpers/utils.js index b6e1af3..85bce6e 100644 --- a/src/helpers/utils.js +++ b/src/helpers/utils.js @@ -94,10 +94,10 @@ export const createToken = (id, isAdmin) => { * @returns {Object} response object */ export const hasToken = async (req, res, next) => { - const token = req.body.token || req.headers['x-access-token'] || req.headers.Authorization; + const token = req.body.token || req.headers['x-access-token'] || req.headers.Authorization || req.body.Authorization; try { - const noBearer = token.replace(/Bearer\s/gi, ''); if (token) { + const noBearer = token.replace(/Bearer\s/gi, ''); const decoded = await jwt.verify(noBearer, process.env.SECRET); const text = 'SELECT * FROM Users WHERE id = $1'; const { rows } = await db.query(text, [decoded.id]); From f5e38c74d33e4e17b174dd1449c767d368fbee08 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 16:55:26 +0100 Subject: [PATCH 8/9] damn mamamia --- src/routes/trip.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/trip.js b/src/routes/trip.js index 9472a02..7a96a0a 100644 --- a/src/routes/trip.js +++ b/src/routes/trip.js @@ -9,7 +9,7 @@ const { validateCreateTrip } = ValidateInput; const router = express.Router(); router.post('/', hasToken, isAdmin, validateCreateTrip, create); -router.get('/', hasToken, getTrips); +router.get('/', getTrips); router.get('/:trip_id', hasToken, getOneTrip); export default router; From 7d1864cef446c267d9fe74c88bf77ad519757362 Mon Sep 17 00:00:00 2001 From: Mcdavid Emereuwa Date: Sat, 13 Jul 2019 16:59:54 +0100 Subject: [PATCH 9/9] damn i was right mama --- src/routes/trip.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/trip.js b/src/routes/trip.js index 7a96a0a..9472a02 100644 --- a/src/routes/trip.js +++ b/src/routes/trip.js @@ -9,7 +9,7 @@ const { validateCreateTrip } = ValidateInput; const router = express.Router(); router.post('/', hasToken, isAdmin, validateCreateTrip, create); -router.get('/', getTrips); +router.get('/', hasToken, getTrips); router.get('/:trip_id', hasToken, getOneTrip); export default router;