From c4131c82aaaf26833422aa8f9c86686bbe4a730c Mon Sep 17 00:00:00 2001 From: counterweight Date: Thu, 6 Mar 2025 00:39:16 +0100 Subject: [PATCH] another --- src/middlewares/index.js | 16 ++++++++----- src/middlewares/redirectHomeIfAuthorized.js | 2 +- .../redirectIfNotAuthorizedMiddleware.js | 24 +++++++++++++------ 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/middlewares/index.js b/src/middlewares/index.js index c4fc3c7..c546507 100644 --- a/src/middlewares/index.js +++ b/src/middlewares/index.js @@ -1,4 +1,3 @@ -const redirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware'); const redirectIfMissingProfileDetailsMiddleware = require('./redirectIfMissingProfileDetailsMiddleware'); const sessionService = require('../services/sessionService'); @@ -15,13 +14,18 @@ const createSessionMiddleware = new CreateSessionMiddlewareProvider({ }).provide(); const RejectIfNotAuthorizedMiddleware = require('./rejectIfNotAuthorizedMiddleware'); -const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware( - sessionService -).provide(); +const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware({ + sessionService, +}).provide(); const RedirectHomeIfAuthorized = require('./redirectHomeIfAuthorized'); -const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized( - sessionService +const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized({ + sessionService, +}).provide(); + +const RedirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware'); +const redirectIfNotAuthorizedMiddleware = new RedirectIfNotAuthorizedMiddleware( + { sessionService } ).provide(); module.exports = { diff --git a/src/middlewares/redirectHomeIfAuthorized.js b/src/middlewares/redirectHomeIfAuthorized.js index 4fcca17..f3aedf2 100644 --- a/src/middlewares/redirectHomeIfAuthorized.js +++ b/src/middlewares/redirectHomeIfAuthorized.js @@ -1,5 +1,5 @@ class RedirectHomeIfAuthorized { - constructor(sessionService) { + constructor({ sessionService }) { this.sessionService = sessionService; } diff --git a/src/middlewares/redirectIfNotAuthorizedMiddleware.js b/src/middlewares/redirectIfNotAuthorizedMiddleware.js index f4b9e47..353f21c 100644 --- a/src/middlewares/redirectIfNotAuthorizedMiddleware.js +++ b/src/middlewares/redirectIfNotAuthorizedMiddleware.js @@ -1,10 +1,20 @@ -const sessionService = require('../services/sessionService'); - -async function redirectIfNotAuthorizedMiddleware(req, res, next) { - if (!(await sessionService.isSessionAuthorized(req.cookies.sessionUuid))) { - return res.redirect('/login'); +class RedirectIfNotAuthorizedMiddleware { + constructor({ sessionService }) { + this.sessionService = sessionService; + } + + provide() { + return async (req, res, next) => { + if ( + !(await this.sessionService.isSessionAuthorized( + req.cookies.sessionUuid + )) + ) { + return res.redirect('/login'); + } + next(); + }; } - next(); } -module.exports = redirectIfNotAuthorizedMiddleware; +module.exports = RedirectIfNotAuthorizedMiddleware;