Add, Edit, and Delete Scheduled Events #30
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
foravo/milestone-proof-20260519050317#30
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Imported from GitHub issue
StanfordCS194/spr26-Team-22#53.Source: https://github.com/StanfordCS194/spr26-Team-22/issues/53
Original author: @nriedman
Original state: open
Summary
We have an Events Dashboard where the user can see events they have scheduled with friends, and track the live status of the events. As of Demo Day 1, this is a read-only view. Ideally, users should be able to add, edit, and delete scheduled events.
Requirements
Add
Edit
Delete
This will be the simplest change. Deletion comes naturally from the
Listview. Change theUpcomingEventsDashboardto enable swipe-to-delete, and in theonDeleteclosure remove the event from theScheduledHangoutRepository. Other system components that need to react to the deleted event (e.g. the component that handles deciding when to send what notifications to other users) can subscribe toScheduledHangoutdeletions using the nifty NotificationCenter feature.Notes
The answers to "What happens after we change an event?" may cause us to reconsider how we surface the API for sending messages and booking events. For example, I can imagine that instead of a
InviteService.book(for:)method that is hardcoded to take aSuggestion, we could have an Envrionment-accessibleEventActionsobject that looks like this:Then, instead of each view independently worrying about what how to orchestrate the persistence/remote messaging side-effects of messing with a scheduled hangout, the logic is centralized here and accessible from any View via the Environment. Food for thought!