diff --git a/app/actions/submissions.ts b/app/actions/submissions.ts index 5221720..0ceee68 100644 --- a/app/actions/submissions.ts +++ b/app/actions/submissions.ts @@ -15,6 +15,12 @@ import { } from "@/lib/submission-intake"; import { submissionWebhookMessage } from "@/lib/submission-webhook"; +function getSubmissionResultLink(formId: string, submissionId: string) { + const baseUrl = process.env.BASE_URL || process.env.NEXTAUTH_URL; + if (!baseUrl) return `/admin/form/${formId}/result/${submissionId}`; + return new URL(`/admin/form/${formId}/result/${submissionId}`, baseUrl).toString(); +} + export async function submitForm( formId: string, answersList: FormAnswerPayload[], @@ -171,11 +177,13 @@ export async function submitForm( if (form.discordWebhookUrl) { try { + const submissionLink = getSubmissionResultLink(formId, result.submissionId); const message = submissionWebhookMessage({ template: templateToUse, isUpdate: result.isUpdate, userName: session.user.name, discordId, + submissionLink, questions: questionsList, answers: normalizedAnswers, oldAnswersByQuestionId: result.oldAnswersDict, diff --git a/app/admin/form/[id]/extra/client.tsx b/app/admin/form/[id]/extra/client.tsx index 3fa4451..113f1c6 100644 --- a/app/admin/form/[id]/extra/client.tsx +++ b/app/admin/form/[id]/extra/client.tsx @@ -336,10 +336,10 @@ export default function FormExtraClient({ form }: FormExtraClientProps) { className="min-h-24" />

- Use {`{1}`}, {`{2}`} to insert answers according to question order, and {`{username}`}, {`{displayname}`}, {`{id}`} for user info. + Use {`{1}`}, {`{2}`} to insert answers according to question order, {`{link}`} for the admin result link, and {`{username}`}, {`{displayname}`}, {`{id}`} for user info.

- {["username", "displayname", "id", "1", "2"].map((variable) => ( + {["username", "displayname", "id", "link", "1", "2"].map((variable) => (