Invited guests (approx. 100-120) should be able to register for a birthday party using a form. After logging in, the person should be able to edit the invitation in the frontend and leave comments, e.g. on a form with these questions:
I’m looking forward to the party and will be there
unfortunately I can’t come
I am a vegetarian
I am bringing XX more people
etc.
I will realize the registration with the cookbook “user-registration” (if there is no other way).
How do I assign these form details to the person? It would be perfect if a folder is created for each guest and I can create an overview table from the details.
There certainly won’t be a plugin for this, will there?
Do you really need users? Maybe send out links with individual pre-generated tokens (maybe including a hashed version of the email) instead that are then invalidated after submitting the form?
Hence, my question whether there is another way.
The ability to change personal details by the guest would only be a gimmick, but not a requirement. The most important feature is that all form registrations can be collected and displayed as a clear list (in the frontend).
Is there a cookbook for your suggestion, or further information, as I have no experience with this topic. To learn something new, it is always good to analyze an existing project (or cookbook) and familiarize yourself with the functions instead of starting from scratch.
But assuming you already have your list of email addresses to whom you want to send your invitations.
Generate a list of tokens, e.g. as csv file, and send a link to the people to invite that contains this token as part of the url. (maybe even key = email, value = token, so you later know who got which link)
Then create a route with a placeholder for the token.
If the token is valid (compare with your list), return the page with the form.
There is no complete list of email addresses, as most guests are invited via WhatsApp. But some are also sent by email. Sending a link for registration makes the most sense.
There are also a few older people who do not have a mobile phone/internet and submit their registration verbally. These then have to be recorded separately in Kirby. But that only corresponds to a small proportion of people.
However, your approach will only be possible for me with 1,000 questions (each day ) here in the forum. It could be very annoying
However, the event cookbook is a good start for me to internalize the functions and use this as a basis. But I still have to look at the cookbook in detail to see how it works and whether it fits my concept.
The most important part is to order your thoughts, make a concept, then write down each step in the form of comments what you need to do, then finally translate this into code. Once the steps are clear, the rest will fall into place more or less automatically. And I’m saying this as a self-taught developer.
ChatGPT & Kirby? Helps me with 1 out of 1,000 questions. Each additional question confuses ChatGPT and moves far away from the solution. The examples generated by ChatGPT usually have nothing in common with Kirby’s syntax. I think ChatGPT’s database still has not enough Kirby content.
And I’m saying this as a self-taught developer.
Based on your expertise, I had assumed you were studying at Harvard University.
I agree with you: a concept that works is the cornerstone of a project. Otherwise, you get lost in the wrong direction and end up at a dead end.
I want to keep the registration process as simple as possible, both for the guests and for me as the developer. After the birthday, the site will go offline again anyway
But 120 people are also a potential opportunity to gain new customers if they are enthusiastic about the website. Because there are also many business people.
we did something similar with in my company.
Our way works a little like the magic link from slack but i would require a mail adress at the registration.
Instead of creating users like in the Cookbook we created pages for each entry.
Thank you for sharing your ideas. Different approaches are helpful to choose the right way.
I would also like to add a photo gallery to the site, which I will do at the birthday. A later login with e-mail and password would therefore be useful.
Step 1: Registration
We build a form with all needed form fields, eg. name, email, questions etc.
After submitting the form we validate the data and if it’s all valid we create a subpage f.e. for the page invitations.
We save those pages as drafts. While creating this page we also created a secret string for each entry. This will be part of the “magic link”.
Step 2: Verification
After creating the page with the secret string we send an email to the adress submitted in the form with our magic link. We created a route f.e. /verify. inside this route we check for params inside the magic link. If those params match the data from the draft page, we “verify” the entry and change the status to unlisted.
Step 3: Change Data
If a user wants to change their data we created a simple form with 2 fields f.e. name and email.
After submittig this form we check if we have an matching entry and send out another mail with another magic link this time to another form where we populate the registration form with the data from the registration.
I hope it’s understandable. You can contact me via DM because maybe it’s easier in german – alt least for me.