diff --git a/backend/src/plugins/Cases/functions/createCase.ts b/backend/src/plugins/Cases/functions/createCase.ts index 0a0925d7..be7af702 100644 --- a/backend/src/plugins/Cases/functions/createCase.ts +++ b/backend/src/plugins/Cases/functions/createCase.ts @@ -5,6 +5,7 @@ import { resolveUser } from "../../../utils"; import { CaseArgs, CasesPluginType } from "../types"; import { createCaseNote } from "./createCaseNote"; import { postCaseToCaseLogChannel } from "./postToCaseLogChannel"; +import { getBaseUrl } from "../../../pluginUtils"; export async function createCase(pluginData: GuildPluginData, args: CaseArgs) { const user = await resolveUser(pluginData.client, args.userId); @@ -40,7 +41,17 @@ export async function createCase(pluginData: GuildPluginData, a pp_name: ppName, is_hidden: Boolean(args.hide), }); + const messagesToArchive = await pluginData.state.savedMessages.getUserMessages(user.id, 50); + const archiveId = await pluginData.state.archives.createFromSavedMessages(messagesToArchive, pluginData.guild); + const baseUrl = getBaseUrl(pluginData); + await createCaseNote(pluginData, { + caseId: createdCase.id, + modId: mod.id, + body: `Automatically archived messages: ${pluginData.state.archives.getUrl(baseUrl, archiveId)}`, + automatic: args.automatic, + postInCaseLogOverride: false, + }); if (args.reason || args.noteDetails?.length) { await createCaseNote(pluginData, { caseId: createdCase.id,