What is JotForm?
JotForm is a free online form builder which helps you create online forms without writing a single line of code. No sign-up required.
At JotForm, we want to make sure that you’re getting the online form builder help that you need. Our friendly customer support team is available 24/7.
We believe that if one user has a question, there could be more users who may have the same question. This is why many of our support forum threads are public and available to be searched and viewed. If you’d like help immediately, feel free to search for a similar question, or submit your question or concern.
Party Booking (with Appointment Slot Widget)Asked by nrdadmin on March 05, 2017 at 04:00 PM
First, if there is an easier way to do this, please let me know!
I'm trying to build a form to help simplify our party booking process. I need to have specific time slots available for Wednesday Evening, Friday Evening, Saturday Afternoon and Evening, and Sunday Afternoon. (Ex: Saturday's parties are 1:30-2:00 pm, 2:30-3:00 pm, and 3:30-4:00 pm and then 9:00-9:30 pm and 10:00-10:30 pm) However, I need to add the condition that Friday and Saturday Evening's require the child be over the age of 12.
So, first I used date picker. I blocked out days that we can't host parties (Mondays, Tuesdays, etc) which requires me to go in and insert the days individually.
Then, I used "Number" so I could have the customer input the child's age.
Once the calendar was set up, I used the appointment slots widget and set it up for one specific session. For example, Saturday Afternoon April 15, 2017 with the three time slots.) Then, I would have to set up an additional appointment slots for the same day, but for the two evening time slots (Saturday Evening, April 15, 2017). So, now I have 2 appointment slot widgets for April 15th. They both have the condition of having April 15th selected on the date picker; the second appointment slot has the additional condition of needing to be over the age of 12.
My first issue is if a child is 13 and is looking for a party spot on April 15th, they can technically select a spot for both the afternoon and the evening, since both widgets for that day will load. I attempted to put the condition that if one appointment slot was filled, to hide the other one, but it doesn't work.
My other issue is that I have to put around 25 appointment slot widgets in per month (we're allowing booking two weeks from today to six months out). I've put about 2 months worth of widgets (and conditions) and it seems to take a while to load (preview). I will most likely put a whole years worth of appointment slot widgets on the form (which is around 300 widgets with corresponding conditions for each widget). Will the form take too long to load?
Once all this is done, I'm hoping to use Zapier to populate a Google Calendar for us so we have all the information needed for the parties.
Any help would be greatly appreciated.
I assume this was your form https://www.jotform.us/form/70477734939168 you were working on.
I review the form and I noticed that there were multiple error in the conditions on the form due to modified or removed fields.
The condition rules will not take effect if there were errors on them. I suggest you fix and correct first all the red conditions with error and test again.
We will look into further once you have corrected them.
We will wait for your updated response.
Thanks for the response, but that's the wrong form. It's the Time and Date Options form.
Thank you for clarifying that. But the form https://www.jotform.us/form/70614518339155 was not properly setup at this time.
There's nothing much on the form that resembles a booking form at this time.
Can you please fix first the initial configurations on the form. We will look into it once set.
So, first the "Please Run the Wizard" seems to be a glitch. I've searched through everything on the page and can not find what is causing that issue. Second, there is no date selected because that is a field that the customer would need to fill in. And third, this form did not resemble a booking form because I was attempting to isolate a specific element to the form in order to be able to see if i could manipulate it to behave in a manner with which i could use.
In order to address your concerns, and hopefully emphasis the issue I'm having, I've built a new form:
It is titled "Party Booking Form (Session Parties)."
If there is anything else that requires clarification, please let me know.
To be honest, with the approach you have, the form may be hard to maintain and might concern more loading or performance issues if more widgets and conditions are added in the future.
I do have another workaround in mind, but I am not sure if this would be more appealing to you.
You can test this form that I have: https://form.jotform.com/70661539911964. Try filling out a date and time slot, then submit it. Then open the form again, fill it out and choose the same date and time slot, the form should show you a warning message that the specific date and time is not anymore available. You can clone my form to have a better look at it while reading the steps below. Here's a guide on how to clone my form: https://www.jotform.com/help/42-How-to-Clone-an-Existing-Form-from-a-URL.
Here's how I did mine:
1. Here's the anatomy or structure of my form:
2. Now first the time slot, there are two sets as you have already seen, these are my conditions for it:
3. Now I want to output the date + time slot to my text box titled "Final Date and Time Reservation":
Now I will insert the date and time slot values in my text box using this conditional logic setup:
This is how my condition works:
IF "Date" field is Filled
"Date" value <space> ("Time Slot 12y/o" "Time Slow 13/yo")
"Final Date and Time Reservation" text box
Notice that the time slot for 12 and 13 y/o are just placed side by side, they are NOT separated by a space. Please also note that their values are set to "A-Z", which means the actual text shown in the date or option will be the output.
4. Now we need to somehow "erase" or "clear" the value of the time slot WHEN the user changes his/her mind, let's say the age entered was 11, then he selected 1:30-2:00 PM, BUT he changed his/her mind and set the age to 13 (which will show the evening options). We need to erase the first option, you can do this by setting the "Clear Hidden Field Values" to "Clear on Being Hidden", what happens here is if the radio button field was hidden, then the selection would be cleared.
This is how it looks like in action:
5. Now how do we limit the date and time reserved? Based on your form, I presume the date and time slot can only be reserved ONCE, is that correct? If so, then we can use the "Unique Question" submission limit by JotForm, here's a guide about it: https://www.jotform.com/help/223-How-to-set-Form-Limits-Based-on-a-Unique-Question
In my case, I am selecting the text box "Final Date and Time Reservation" as the unique question. What happens here is that the specific combination of date and time and only be submitted once, giving it a limit of one.
6. How do we inform our users about a reserved date? You need to set the warning message to a more appropriate text to inform the users.
Here I changed the default warning text to inform the user about the unavailability of the date and time. You can, of course, add more details like "Press the back button to edit your submission". Or anything that would help your users better.
This is how it looks like:
With this approach, it may not be that aesthetically appealing for the warning message, but the form works in a much more straightforward way (assuming that specific date and time can only be reserved ONCE). Here we don't need a lot of widgets and conditions, it can easily be maintained and you just need to disable the dates in the date field that you can't be selected.
Let us know if this approach is useful for you.
Thank you, Charlie! I knew there had to be an easier way to do this. You've given me a lot more that I can work with.
Now, my question is whether or not it is possible to show a list of available dates. My concern is that if a customer is looking for a date (and all the time slots for that date are already booked) they will have to potentially click on 5 options just to find out that none of them are available. Then they will have to do the same thing for a second date, then a third. At some point I suspect they may just get frustrated and not book the party.
If there is a worry that you may at some point be overbooked to where users would run into multiple choices being already taken, the easiest solution I can come up with would be to show which dates and times are already selected.
To do so, you could create a grid listing report:
Make sure to only include the date/time selected in the report so as not to show all your customers data.
Then embed that report somewhere in your form using an iFrame widget:
That way, a list of currently reserved time slots would be available.
We do run into the issue where multiple dates are fully booked. We're typically booked a month or so out, depending on the type of party But it sounds like this may be a very good set up for us. Thank you everyone for all your help.