This commit is contained in:
counterweight 2025-03-06 00:39:16 +01:00
parent 6ba8eed427
commit c4131c82aa
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
3 changed files with 28 additions and 14 deletions

View file

@ -1,4 +1,3 @@
const redirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware');
const redirectIfMissingProfileDetailsMiddleware = require('./redirectIfMissingProfileDetailsMiddleware'); const redirectIfMissingProfileDetailsMiddleware = require('./redirectIfMissingProfileDetailsMiddleware');
const sessionService = require('../services/sessionService'); const sessionService = require('../services/sessionService');
@ -15,13 +14,18 @@ const createSessionMiddleware = new CreateSessionMiddlewareProvider({
}).provide(); }).provide();
const RejectIfNotAuthorizedMiddleware = require('./rejectIfNotAuthorizedMiddleware'); const RejectIfNotAuthorizedMiddleware = require('./rejectIfNotAuthorizedMiddleware');
const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware( const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware({
sessionService sessionService,
).provide(); }).provide();
const RedirectHomeIfAuthorized = require('./redirectHomeIfAuthorized'); const RedirectHomeIfAuthorized = require('./redirectHomeIfAuthorized');
const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized( const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized({
sessionService sessionService,
}).provide();
const RedirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware');
const redirectIfNotAuthorizedMiddleware = new RedirectIfNotAuthorizedMiddleware(
{ sessionService }
).provide(); ).provide();
module.exports = { module.exports = {

View file

@ -1,5 +1,5 @@
class RedirectHomeIfAuthorized { class RedirectHomeIfAuthorized {
constructor(sessionService) { constructor({ sessionService }) {
this.sessionService = sessionService; this.sessionService = sessionService;
} }

View file

@ -1,10 +1,20 @@
const sessionService = require('../services/sessionService'); class RedirectIfNotAuthorizedMiddleware {
constructor({ sessionService }) {
async function redirectIfNotAuthorizedMiddleware(req, res, next) { this.sessionService = sessionService;
if (!(await sessionService.isSessionAuthorized(req.cookies.sessionUuid))) { }
return res.redirect('/login');
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;