Skip to content

Add registration form logic for SCEvents' events #2071

@steeevin88

Description

@steeevin88

this pr adds SCEvents' landing page and properly renders individual events. that being said... we want users to be able to register for these events.

when an event is created and stored in SCEvents' database (MongoDB), they have a very specific schema that they follow (you'll need to research this!). but one of the fields in the event data is "registration_form"; this contains all the questions for a user to fill out + register for the event

thus... for EACH event, there should be a "register for event" button that, upon clicking, leads users to this registration form. they will be able to fill the form out... and if they fill the data out, they would click "submit" and register for the event

thus, we need to do a few things:

  1. add the register button
  2. upon clicking to register for the button... we have two options
  • open a modal that has the registration form
  • or... lead to an entirely different page
    feel free to choose either/discuss with the rest of the team 😄 my immediate thoughts are to make it a separate page to reduce complexity though
  1. in the page/modal where users see the form.. they should be able to fill it out
  2. after filling out the form, they should be able to submit the form --> we'll need to upgrade the backend to support this... so for now let's just display an alert instead (maybe let's make this alert useful too? instead of just a "submit was clicked")

there's also a few small points to consider (i'm probably missing some too):

  • eventually, we should conditionally render the registration button if users are members IF the event is a "members-only" sort of event. but for now we don't have "members-only" events, so we can ignore this
  • ideally the text on the register button is minimal

note --> the event creation logic (and thus the event registration form creation logic) will be added in this pr; if this hasn't been finished yet then you'll need to create events by yourself (ex. through Postman); you can use an LLM to help you with this

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions