feat: add an optional event location (meeting link or physical place) - #31
Merged
Conversation
The poll creator can attach one location to the whole event (not per-slot): a Teams / Zoom / Meet link or a physical place. It's shown to respondents on the poll page and confirmed banner, and carried into the Add-to-calendar export (ICS LOCATION + Google/Outlook deep-links). - New nullable polls.location column (migration 0060_polls_location.sql; belongs in backoffice/universal-platform — renumber before applying). - Poll/NewPoll gain a location field; createPoll includes it in the insert, and the gated RPC path sets it as a follow-up update (like the notify-on-response opt-in), since create_poll_gated has no location arg. - CreatePoll: 'Location or meeting link' input. - PollPage: link-aware location line (anchor for URLs, text otherwise). - calendar.ts: CalendarEvent.location threaded into ICS/Google/Outlook, with unit tests.
Contributor
Author
|
|
# Conflicts: # src/components/PollPage.tsx
Contributor
Author
|
Rebased onto main (picks up the timezone-switcher change from #32); the location line now shows in both the header and the confirmed banner alongside it. Conflict-free and merge-ready — still hold merge until migration 0060 (renumbered for backoffice/universal-platform) is applied to the hosted Supabase, since creating a poll with a location errors until |
… applied via universal-platform 0063
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Let the poll creator attach one event location (not per-slot): a Teams / Zoom / Google Meet link or a physical place ("Meeting room 5"). It's shown to respondents on the poll page and the confirmed banner, and carried into the Add-to-calendar export.
Changes
supabase/migrations/0060_polls_location.sql— new nullablepolls.locationcolumn.backoffice/universal-platform; this file is here for review — renumber to that repo's next free index and apply to the hosted Supabase before this ships.Poll/NewPollgainlocation.createPollincludes it in the insert; the free-tier gated path sets it via a follow-up update (mirrors the notify-on-response opt-in), sincecreate_poll_gatedhas no location arg.CreatePoll: new "Location or meeting link" input.PollPage: link-aware location line (anchor forhttp(s)URLs, plain text otherwise), in the header and the confirmed banner.calendar.ts:CalendarEvent.location→ ICSLOCATION, Googlelocation, Outlooklocation.Tests
locationparam).npm test38 pass,npm run buildgreen.Note
Until the column exists on the hosted DB, creating a poll with a location will error on insert — so merge/apply the migration first.
🤖 Generated with Claude Code