diff --git a/src/components/semantic/metaItems.tsx b/src/components/semantic/metaItems.tsx index 343188ed..288b5f10 100644 --- a/src/components/semantic/metaItems.tsx +++ b/src/components/semantic/metaItems.tsx @@ -137,7 +137,7 @@ export const MetaItems = asMetaItems({ reservations: ["Reservations", { presenter: ReservationsMetaPresenter }], preResources: ["Pre-Resources", { presenter: ResourcesMetaPresenter }], postResources: ["Post-Resources", { presenter: ResourcesMetaPresenter }], - eventSurvey: "Event Survey URL", + eventSurvey: ["Event Survey", { presenter: EventSurveyMetaPresenter }], }); function ReservationsMetaPresenter(props: MetaItemPresenterProps) { @@ -426,3 +426,39 @@ function ResourcesMetaPresenter({ doc, update, prop, name }: MetaItemPresenterPr ); } + +export function EventSurveyMetaPresenter(props: MetaItemPresenterProps) { + // Ensure survey is always an object, never null + const survey = (props.doc[props.prop as keyof Content] as ExternalReference | null) ?? { title: "", url: "" }; + + // Update handler for a field + const updateSurvey = (newSurvey: Partial) => { + if (props.update) { + props.update({ + ...props.doc, + [props.prop]: { + ...survey, + ...newSurvey, + }, + }); + } + }; + + return ( + <> + + Title + URL + + + + + + + + + + + + ); +} diff --git a/src/services/emptyDocuments.ts b/src/services/emptyDocuments.ts index 0d9f7dfa..06affe72 100644 --- a/src/services/emptyDocuments.ts +++ b/src/services/emptyDocuments.ts @@ -91,12 +91,12 @@ const emptyDocuments: Document[] = [ altText: "", id: "eventThumbnail", }, - date: 1722470400000, + date: 1743807600000, numberOfPlaces: 20, eventStatus: "CLOSED", preResources: [], postResources: [], - eventSurvey: "", + eventSurvey: [], emailEventDetails: "Check the online events page for additional details.", emailConfirmedBookingText: "", emailWaitingListBookingText: "",