RocketChat / RC4Conferences

A set of scalable components for communities to build, manage, and run virtual conferences of any size.
https://conf.rceng.shop/conferences/c/1
24 stars 39 forks source link

[TODO] Create a Component for customizing the User Registration for an Event #101

Open Dnouv opened 1 year ago

Dnouv commented 1 year ago

Create a form component to be incorporated within the Event Scheduler/Create Component, which allows the event organizer to get some required and additional details about their event attendees, and this data can, later on, be used by them for any analytics purpose or just to keep the record.

Preview of Form component: image

Similar to the KYC (Know your customer), it will be a KYA (Know your Attendee)

Please feel free to comment and ask questions, if any. Thank you!

jayp5545 commented 1 year ago

Hi can i do this ?

Dnouv commented 1 year ago

Hey @jayp5545

I appreciate your interest in this issue. However, before getting started to code, could you please explain your initial approach? If you are familiar with the eventyay you might have seen a similar feature when creating an event. It will be good if you know what this is going to be used for and how it works in Eventyay.

Thank you!

jayp5545 commented 1 year ago

Hi ! No, I do not have an idea about what this is going to be used for. It would be great if you could provide me any references or could link me to a different issue if this is not a beginner friendly task since I am just getting started with open-source contributions.

Thank you

jayp5545 commented 1 year ago

Or I will just explore the codebase and then come up with a solution. Thank you

Saksham294 commented 1 year ago

Hey @Dnouv can't we simply create a form for this? However, I would like to ask if this issue only requires a form component or an integration with the backend to store the data too. If we also want to store the data in the backend then I would like to understand how we are integrating the API

Thanks

Dnouv commented 1 year ago

Hello @Saksham294

I appreciate your interest in the issue.

can't we simply create a form for this?

No, we are component-based, and this is not a form component it is a full-stack component with interactions with the backend

If we also want to store the data in the backend then I would like to understand how we are integrating the API

Sure, go ahead and explore the codebase

Thank you!

jignyasamishra commented 1 year ago

i would really like to contribute to this issue

jignyasamishra commented 1 year ago

My brief idea :I can create a form which allows the event handler to receive all the information of the attendee I can create a POST request API which can get data and store in database and also can create a preview page for the attendee to view his details and give him option to edit it if he/she feels he needs to change something and that change will be reflected in db too for backend I can create a express server for backend and for frontend I can create responsive layout using react js and they can interact concurrently.

Anubhav84454 commented 1 year ago

Hi @Dnouv , I would really like to contribute for this issue. Here is my step by step approach :

  1. I'll create 2 Schemas Or Models using mongoose for both : 'Required Form Fields' (1st) and 'Information to collect'. (2nd)
  2. For 1st schema, I'll include all required records like first name, last name and email and their data type will be taken by form from front end like text for first name and so on.
  3. For include, require and show public fields, I'll take a boolean value as input from the event organiser using event handlers in front end and will use a ternary operator in their schema fields to decide whether to include them or not.
  4. Similarly for 2nd schema ( Information To Collect model) I'll follow the same steps (2nd and 3rd) from above.
  5. Now whenever a Attendee data is inserted like first name, last name etc., all other remaining fields like require, show public, will get included or not for each attendee, will known to us(database) already. (Post API)
  6. Then update option can also be given if event organiser later wants to update something. We can then make changes to same schema accordingly. (PUT API)
Dnouv commented 1 year ago

Thank you so much @jignyasamishra and @Anubhav84454, for taking up the issue.

I am sorry for not getting back to you sooner. There is one point I would like to mention; if you explore a bit more into the codebase, you will find that we already have a backend (with PSQL database and exposed POST endpoints); this feature involves creating the frontend components for the interaction with this API endpoints.

Thank you!

AnUbHaVafs commented 1 year ago

Hi @Dnouv , I'm Anubhav @Anubhav84454 [this is me, by mistake I logged in with different google account at github], thank you for replying https://github.com/RocketChat/RC4Conferences/issues/101#issuecomment-1445477384. I'm working on this issue.

coderboy-yash commented 1 year ago

hi @Dnouv I am interested in working on this issue, assign me this issue so I can start working to solve this issue.