diff options
| -rwxr-xr-x | src/routes.js | 6 | ||||
| -rw-r--r-- | src/routes/activitypub.ts | 19 | ||||
| -rw-r--r-- | src/routes/frontend.ts | 19 | 
3 files changed, 19 insertions, 25 deletions
diff --git a/src/routes.js b/src/routes.js index 5371e0e..d59a738 100755 --- a/src/routes.js +++ b/src/routes.js @@ -2,7 +2,7 @@ import fs from "fs";  import express from "express";  import { customAlphabet } from "nanoid";  import randomstring from "randomstring"; -import { getConfig } from "./lib/config.js"; +import { frontendConfig, getConfig } from "./lib/config.js";  import { addToLog } from "./helpers.js";  import moment from "moment-timezone";  import crypto from "crypto"; @@ -1505,9 +1505,7 @@ router.post("/activitypub/inbox", (req, res) => {  });  router.use(function (req, res, next) { -    res.status(404); -    res.render("404", { url: req.url }); -    return; +    return res.status(404).render("404", frontendConfig());  });  addToLog("startup", "success", "Started up successfully"); diff --git a/src/routes/activitypub.ts b/src/routes/activitypub.ts index 2c4231a..2b8fb4a 100644 --- a/src/routes/activitypub.ts +++ b/src/routes/activitypub.ts @@ -1,7 +1,7 @@  import { Router, Request, Response, NextFunction } from "express";  import { createFeaturedPost, createWebfinger } from "../activitypub.js";  import { acceptsActivityPub } from "../lib/activitypub.js"; -import getConfig from "../lib/config.js"; +import getConfig, { frontendConfig } from "../lib/config.js";  import Event from "../models/Event.js";  import { addToLog } from "../helpers.js"; @@ -15,8 +15,7 @@ const send404IfNotFederated = (      next: NextFunction,  ) => {      if (!config.general.is_federated) { -        res.status(404).render("404", { url: req.url }); -        return; +        return res.status(404).render("404", frontendConfig());      }      next();  }; @@ -49,10 +48,10 @@ router.get("/:eventID/m/:hash", async (req: Request, res: Response) => {              id: eventID,          });          if (!event) { -            return res.status(404).render("404", { url: req.url }); +            return res.status(404).render("404", frontendConfig());          } else {              if (!event.activityPubMessages) { -                return res.status(404).render("404", { url: req.url }); +                return res.status(404).render("404", frontendConfig());              }              const message = event.activityPubMessages.find(                  (el) => el.id === id, @@ -69,7 +68,7 @@ router.get("/:eventID/m/:hash", async (req: Request, res: Response) => {                      );                  }              } else { -                return res.status(404).render("404", { url: req.url }); +                return res.status(404).render("404", frontendConfig());              }          }      } catch (err) { @@ -81,7 +80,7 @@ router.get("/:eventID/m/:hash", async (req: Request, res: Response) => {                  " failed with error: " +                  err,          ); -        return res.status(404).render("404", { url: req.url }); +        return res.status(404).render("404", frontendConfig());      }  }); @@ -103,7 +102,7 @@ router.get("/.well-known/webfinger", async (req, res) => {              const event = await Event.findOne({ id: eventID });              if (!event) { -                return res.status(404).render("404", { url: req.url }); +                return res.status(404).render("404", frontendConfig());              } else {                  if (acceptsActivityPub(req)) {                      res.header( @@ -122,7 +121,7 @@ router.get("/.well-known/webfinger", async (req, res) => {                  "error",                  `Attempt to render webfinger for ${resource} failed with error: ${err}`,              ); -            return res.status(404).render("404", { url: req.url }); +            return res.status(404).render("404", frontendConfig());          }      }  }); @@ -167,7 +166,7 @@ router.get("/:eventID/followers", async (req, res) => {              "error",              `Attempt to render followers for ${eventID} failed with error: ${err}`,          ); -        return res.status(404).render("404", { url: req.url }); +        return res.status(404).render("404", frontendConfig());      }  }); diff --git a/src/routes/frontend.ts b/src/routes/frontend.ts index c9594ef..cdf314c 100644 --- a/src/routes/frontend.ts +++ b/src/routes/frontend.ts @@ -1,9 +1,8 @@  import { Router, Request, Response } from "express";  import moment from "moment-timezone";  import { marked } from "marked"; -import { frontendConfig } from "../util/config.js";  import { renderPlain } from "../util/markdown.js"; -import getConfig from "../lib/config.js"; +import getConfig, { frontendConfig } from "../lib/config.js";  import { addToLog, exportICal } from "../helpers.js";  import Event from "../models/Event.js";  import EventGroup, { IEventGroup } from "../models/EventGroup.js"; @@ -30,9 +29,7 @@ router.get("/:eventID", async (req: Request, res: Response) => {              .lean() // Required, see: https://stackoverflow.com/questions/59690923/handlebars-access-has-been-denied-to-resolve-the-property-from-because-it-is              .populate("eventGroup");          if (!event) { -            res.status(404); -            res.render("404", { url: req.url }); -            return; +            return res.status(404).render("404", frontendConfig());          }          const parsedLocation = event.location.replace(/\s+/g, "+");          let displayDate; @@ -252,7 +249,7 @@ router.get("/:eventID", async (req: Request, res: Response) => {                  err,          );          console.log(err); -        res.status(404).render("404", { url: req.url }); +        return res.status(404).render("404", frontendConfig());      }  }); @@ -263,7 +260,7 @@ router.get("/group/:eventGroupID", async (req: Request, res: Response) => {          }).lean();          if (!eventGroup) { -            return res.status(404).render("404", { url: req.url }); +            return res.status(404).render("404", frontendConfig());          }          const parsedDescription = marked.parse(eventGroup.description);          const eventGroupEditToken = eventGroup.editToken; @@ -364,7 +361,7 @@ router.get("/group/:eventGroupID", async (req: Request, res: Response) => {              `Attempt to display event group ${req.params.eventGroupID} failed with error: ${err}`,          );          console.log(err); -        return res.status(404).render("404", { url: req.url }); +        return res.status(404).render("404", frontendConfig());      }  }); @@ -391,7 +388,7 @@ router.get(                  `Attempt to display event group feed for ${req.params.eventGroupID} failed with error: ${err}`,              );              console.log(err); -            res.status(404).render("404", { url: req.url }); +            return res.status(404).render("404", frontendConfig());          }      },  ); @@ -413,7 +410,7 @@ router.get("/export/event/:eventID", async (req: Request, res: Response) => {              `Attempt to export event ${req.params.eventID} failed with error: ${err}`,          );          console.log(err); -        res.status(404).render("404", { url: req.url }); +        return res.status(404).render("404", frontendConfig());      }  }); @@ -439,7 +436,7 @@ router.get(                  `Attempt to export event group ${req.params.eventGroupID} failed with error: ${err}`,              );              console.log(err); -            res.status(404).render("404", { url: req.url }); +            return res.status(404).render("404", frontendConfig());          }      },  );  | 
