From 17cd3b684c9b6f93a362f95adfa6ca2d4cbe748f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 11 Jun 2024 16:24:56 -0400 Subject: [PATCH] move slug handling to middleware #12632 --- src/controllers/accounts/profile.js | 10 ---------- src/middleware/user.js | 10 ++++++++++ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/controllers/accounts/profile.js b/src/controllers/accounts/profile.js index 287f3d786d..22405d77dd 100644 --- a/src/controllers/accounts/profile.js +++ b/src/controllers/accounts/profile.js @@ -15,16 +15,6 @@ const utils = require('../../utils'); const profileController = module.exports; profileController.get = async function (req, res, next) { - const lowercaseSlug = req.params.userslug.toLowerCase(); - - if (req.params.userslug !== lowercaseSlug) { - if (res.locals.isAPI) { - req.params.userslug = lowercaseSlug; - } else { - return res.redirect(`${nconf.get('relative_path')}/user/${lowercaseSlug}`); - } - } - const { userData } = res.locals; if (!userData) { return next(); diff --git a/src/middleware/user.js b/src/middleware/user.js index 902f10aadd..723c6ba2b8 100644 --- a/src/middleware/user.js +++ b/src/middleware/user.js @@ -248,6 +248,16 @@ module.exports = function (middleware) { }; middleware.buildAccountData = async (req, res, next) => { + // use lowercase slug on api routes, or direct to the user/ + const lowercaseSlug = req.params.userslug.toLowerCase(); + if (req.params.userslug !== lowercaseSlug) { + if (res.locals.isAPI) { + req.params.userslug = lowercaseSlug; + } else { + return res.redirect(`${nconf.get('relative_path')}/user/${lowercaseSlug}`); + } + } + res.locals.userData = await accountHelpers.getUserDataByUserSlug(req.params.userslug, req.uid, req.query); next(); };