From 60c85efd37c267fb191f696ecc41b91d1e36d57d Mon Sep 17 00:00:00 2001 From: Theis Gaedigk Date: Sun, 26 Apr 2026 15:03:37 +0200 Subject: [PATCH] refactored backend Co-authored-by: Copilot --- backendV2/routes/api/api.route.js | 8 +++++--- backendV2/routes/app/loanMgmt.route.js | 19 +++++++++++-------- backendV2/routes/app/userMgmt.route.js | 9 ++++++--- backendV2/services/authentication.js | 7 +++++-- 4 files changed, 27 insertions(+), 16 deletions(-) diff --git a/backendV2/routes/api/api.route.js b/backendV2/routes/api/api.route.js index 53bd852..a79ee3e 100644 --- a/backendV2/routes/api/api.route.js +++ b/backendV2/routes/api/api.route.js @@ -5,6 +5,8 @@ const router = express.Router(); import dotenv from "dotenv"; dotenv.config(); +const loan_service = loan_service; + import { getItemsFromDatabaseV2, changeInSafeStateV2, @@ -40,7 +42,7 @@ router.post("/change-state/:key/:itemId", authenticate, async (req, res) => { router.get( "/get-loan-by-code/:key/:loan_code", authenticate, - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), async (req, res) => { const loan_code = req.params.loan_code; const result = await getLoanByCodeV2(loan_code); @@ -56,7 +58,7 @@ router.get( router.post( "/set-return-date/:key/:loan_code", authenticate, - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), async (req, res) => { const loanCode = req.params.loan_code; const result = await setReturnDateV2(loanCode); @@ -72,7 +74,7 @@ router.post( router.post( "/set-take-date/:key/:loan_code", authenticate, - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), async (req, res) => { const loanCode = req.params.loan_code; const result = await setTakeDateV2(loanCode); diff --git a/backendV2/routes/app/loanMgmt.route.js b/backendV2/routes/app/loanMgmt.route.js index eb4f203..ad1126a 100644 --- a/backendV2/routes/app/loanMgmt.route.js +++ b/backendV2/routes/app/loanMgmt.route.js @@ -8,6 +8,9 @@ const router = express.Router(); import dotenv from "dotenv"; dotenv.config(); +const loan_service = "Loan Service"; +const loan_mailer_service = "Loan Mailer"; + // database funcs import import { createLoanInDatabase, @@ -24,7 +27,7 @@ import { sendMailLoan } from "./services/mailer.js"; router.post( "/createLoan", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { try { @@ -62,7 +65,7 @@ router.post( ); if (result.success) { - if (await checkIfServiceIsActive2("Loan Mailer")) { + if (await checkIfServiceIsActive2(loan_mailer_service)) { const mailInfo = await getLoanInfoWithID(result.data.id); console.log(mailInfo); sendMailLoan( @@ -102,7 +105,7 @@ router.post( router.get( "/loans", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const result = await getLoansFromDatabase(req.user.username); @@ -118,7 +121,7 @@ router.get( router.post( "/set-return-date/:loan_code", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const loanCode = req.params.loan_code; @@ -133,7 +136,7 @@ router.post( router.post( "/set-take-date/:loan_code", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const loanCode = req.params.loan_code; @@ -157,7 +160,7 @@ router.get("/all-items", authenticate, async (req, res) => { router.delete( "/delete-loan/:id", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const loanId = req.params.id; @@ -182,7 +185,7 @@ router.delete( router.get( "/all-loans", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const result = await getALLLoans(); @@ -196,7 +199,7 @@ router.get( router.post( "/borrowable-items", - checkIfServiceIsActive("Loan Service"), + checkIfServiceIsActive(loan_service), authenticate, async (req, res) => { const { startDate, endDate } = req.body || {}; diff --git a/backendV2/routes/app/userMgmt.route.js b/backendV2/routes/app/userMgmt.route.js index d91b6b3..654030b 100644 --- a/backendV2/routes/app/userMgmt.route.js +++ b/backendV2/routes/app/userMgmt.route.js @@ -5,13 +5,16 @@ const router = express.Router(); import dotenv from "dotenv"; dotenv.config(); +const user_frontend_service = "User Frontend"; +const contact_form_service = "Contact Form Service"; + // database funcs import import { loginFunc, changePassword } from "./database/userMgmt.database.js"; import { sendMail } from "./services/mailer_v2.js"; router.post( "/login", - checkIfServiceIsActive("User Frontend"), + checkIfServiceIsActive(user_frontend_service), async (req, res) => { const result = await loginFunc(req.body.username, req.body.password); if (result.success) { @@ -31,7 +34,7 @@ router.post( router.post( "/change-password", - checkIfServiceIsActive("User Frontend"), + checkIfServiceIsActive(user_frontend_service), authenticate, async (req, res) => { const oldPassword = req.body.oldPassword; @@ -48,7 +51,7 @@ router.post( router.post( "/contact", - checkIfServiceIsActive("Contact Form Service"), + checkIfServiceIsActive(contact_form_service), authenticate, async (req, res) => { const message = req.body.message; diff --git a/backendV2/services/authentication.js b/backendV2/services/authentication.js index feb8ed8..b0de555 100644 --- a/backendV2/services/authentication.js +++ b/backendV2/services/authentication.js @@ -4,6 +4,9 @@ import { verifyAPIKeyDB } from "./database.js"; import { checkIfServiceIsActive2 } from "./functions.js"; env.config(); +const api_service = "API"; +const user_frontend_service = "User Frontend"; + const secretKey = process.env.SECRET_KEY; if (!secretKey) { throw new Error("Missing SECRET_KEY environment variable"); @@ -46,7 +49,7 @@ export async function authenticate(req, res, next) { const apiKey = req.params.key; if (authHeader) { - const serviceActive = await checkIfServiceIsActive2("User Frontend"); + const serviceActive = await checkIfServiceIsActive2(user_frontend_service); if (!serviceActive) { return res .status(503) @@ -69,7 +72,7 @@ export async function authenticate(req, res, next) { return res.status(403).json({ message: "Present token invalid" }); // present token invalid } } else if (apiKey) { - const serviceActive = await checkIfServiceIsActive2("API"); + const serviceActive = await checkIfServiceIsActive2(api_service); if (!serviceActive) { return res .status(503)