fix/middleware preventing 404 redirect

This commit is contained in:
SowinskiBraeden committed 2025-05-07 13:01:24 -07:00
1 parent f417ac00fb
commit cadbc2187d
3 files changed
+44 -4

No files matched your search

+11 -1
View File
@@ -1,12 +1,22 @@
const status = require("../util/statuses");
const session = require("express-session");
// Get all user routes names
let userRouter = require("../router/user")((req, res, next) => next(), null, null, null);
userRouter.stack.shift();
const userRoutes = userRouter.stack.map((layer) => layer.route.path.split("/")[1]);
/**
* @param {MongoClient.collection} users db collection
* @returns {async function} middleware handler function
*/
*/
const createMiddleware = (users) => {
return async (req, res, next) => {
// Redirect not found pages to 404 page
if (!userRoutes.includes(req.url.substring(1))) {
return res.status(status.NotFound).redirect("/notFound");
}
if (!req.session.authenticated || !req.session.email) {
req.session.errMessage = "Please login to view that resource";
res.redirect("/login");