From b3c9cba6478dc16d135313aa6d0adcc02d67ece6 Mon Sep 17 00:00:00 2001 From: Raphael Kabo Date: Sun, 25 Feb 2024 21:34:33 +0000 Subject: feat: optional public events/groups --- src/routes/event.ts | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/routes/event.ts') diff --git a/src/routes/event.ts b/src/routes/event.ts index fb9d8c7..6be5ff8 100644 --- a/src/routes/event.ts +++ b/src/routes/event.ts @@ -140,6 +140,7 @@ router.post( viewPassword: "", // Backwards compatibility editPassword: "", // Backwards compatibility editToken: editToken, + showOnPublicList: eventData?.publicBoolean, eventGroup: isPartOfEventGroup ? eventGroup?._id : null, usersCanAttend: eventData.joinBoolean ? true : false, showUsersList: false, // Backwards compatibility @@ -371,6 +372,7 @@ router.put( url: eventData.eventURL, hostName: eventData.hostName, image: eventImageFilename, + showOnPublicList: eventData.publicBoolean, usersCanAttend: eventData.joinBoolean, showUsersList: false, // Backwards compatibility usersCanComment: eventData.interactionBoolean, -- cgit v1.2.3 From c93fd6e2d455ea4208f9e5ca6bfbd1c0e9fd1ad9 Mon Sep 17 00:00:00 2001 From: Raphael Kabo Date: Mon, 26 Feb 2024 12:09:46 +0000 Subject: refactor: allow Cypress to override config --- src/routes/event.ts | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) (limited to 'src/routes/event.ts') diff --git a/src/routes/event.ts b/src/routes/event.ts index 6be5ff8..ad77052 100644 --- a/src/routes/event.ts +++ b/src/routes/event.ts @@ -21,14 +21,11 @@ import { updateActivityPubActor, updateActivityPubEvent, } from "../activitypub.js"; -import getConfig from "../lib/config.js"; import { sendEmailFromTemplate } from "../lib/email.js"; import crypto from "crypto"; import ical from "ical"; import { markdownToSanitizedHTML } from "../util/markdown.js"; -import { checkMagicLink } from "../lib/middleware.js"; - -const config = getConfig(); +import { checkMagicLink, getConfigMiddleware } from "../lib/middleware.js"; const storage = multer.memoryStorage(); // Accept only JPEG, GIF or PNG images, up to 10MB @@ -58,6 +55,8 @@ const icsUpload = multer({ const router = Router(); +router.use(getConfigMiddleware); + router.post( "/event", upload.single("imageUpload"), @@ -149,7 +148,7 @@ router.post( firstLoad: true, activityPubActor: createActivityPubActor( eventID, - config.general.domain, + res.locals.config?.general.domain, publicKey, markdownToSanitizedHTML(eventData.eventDescription), eventData.eventName, @@ -169,7 +168,7 @@ router.post( ), activityPubMessages: [ { - id: `https://${config.general.domain}/${eventID}/m/featuredPost`, + id: `https://${res.locals.config?.general.domain}/${eventID}/m/featuredPost`, content: JSON.stringify( createFeaturedPost( eventID, @@ -198,9 +197,9 @@ router.post( { eventID, editToken, - siteName: config.general.site_name, - siteLogo: config.general.email_logo_url, - domain: config.general.domain, + siteName: res.locals.config?.general.site_name, + siteLogo: res.locals.config?.general.email_logo_url, + domain: res.locals.config?.general.domain, }, req, ); @@ -232,9 +231,10 @@ router.post( `New event in ${eventGroup.name}`, "eventGroupUpdated", { - siteName: config.general.site_name, - siteLogo: config.general.email_logo_url, - domain: config.general.domain, + siteName: res.locals.config?.general.site_name, + siteLogo: + res.locals.config?.general.email_logo_url, + domain: res.locals.config?.general.domain, eventGroupName: eventGroup.name, eventName: event.name, eventID: event.id, @@ -451,11 +451,11 @@ router.put( const guidObject = crypto.randomBytes(16).toString("hex"); const jsonObject = { "@context": "https://www.w3.org/ns/activitystreams", - id: `https://${config.general.domain}/${req.params.eventID}/m/${guidObject}`, + id: `https://${res.locals.config?.general.domain}/${req.params.eventID}/m/${guidObject}`, name: `RSVP to ${event.name}`, type: "Note", cc: "https://www.w3.org/ns/activitystreams#Public", - content: `${diffText} See here: https://${config.general.domain}/${req.params.eventID}`, + content: `${diffText} See here: https://${res.locals.config?.general.domain}/${req.params.eventID}`, }; broadcastCreateMessage(jsonObject, event.followers, eventID); // also broadcast an Update profile message to all followers so that at least Mastodon servers will update the local profile information @@ -472,7 +472,7 @@ router.put( "@context": "https://www.w3.org/ns/activitystreams", name: `RSVP to ${event.name}`, type: "Note", - content: `@${attendee.name} ${diffText} See here: https://${config.general.domain}/${req.params.eventID}`, + content: `@${attendee.name} ${diffText} See here: https://${res.locals.config?.general.domain}/${req.params.eventID}`, tag: [ { type: "Mention", @@ -498,9 +498,9 @@ router.put( { diffText, eventID: req.params.eventID, - siteName: config.general.site_name, - siteLogo: config.general.email_logo_url, - domain: config.general.domain, + siteName: res.locals.config?.general.site_name, + siteLogo: res.locals.config?.general.email_logo_url, + domain: res.locals.config?.general.domain, }, req, ); @@ -612,9 +612,9 @@ router.post( { eventID, editToken, - siteName: config.general.site_name, - siteLogo: config.general.email_logo_url, - domain: config.general.domain, + siteName: res.locals.config?.general.site_name, + siteLogo: res.locals.config?.general.email_logo_url, + domain: res.locals.config?.general.domain, }, req, ); -- cgit v1.2.3