Full Calendar: using Custom States to create/modify Calendar Events

I would like to allow guests who are not “current users” to search for events by entering multiple dates (i.e. start/end or intervals, e.g. 04/25/21 : 08am - 10am, 04/25/21 : 4pm - 9pm, etc.) and then store the data in a custom state list that can be used to populate the full calendar plugin. Is this possible with this plugin?

If not are there any workarounds?

I would like to avoid using the database but if this is the only way, how do I track the session of a guest who is not a “current user” so that the database doesn’t become full of guest data?


Are you hoping that people who are not current users would not be able to see certain events and only be able to see events marked availability, for example?

No, both guests and users would be able to see the same list of events. So if there are 100 events over the course of a week. Both the users and guests would be able to filter the 100 events based on a time they input. However while users can store their search criteria (e.g. always show me events that occur from 4PM to 8PM on Mon, Wed, Fri), guests are unable to store the search criteria but are still able to search the events based on their input (e.g. show me events that occur today from 9AM to 11AM and from 4PM to 6PM) which would be stored in a Custom State list and can be viewed/modified using the Full Calendar plugin.

would something like this work?

for my calendar, i save all events with a date range instead of an explicit start and end field

My User calendar is set up similarly to what you have and it is working. For the “Type of events” I reference a database and then “Do a Search for” based on the dates. However when it comes to storing multiple dates for Guests using Custom States, the calendar element doesn’t give me the option to use a Custom State as a “Type of events”. For example if I’m creating a Repeating Group and using Custom States to populate the Repeating Group, the “Type of events” allows for fields like text, dates, etc. I’m just wondering if I’m not doing something right or if it is just not possible to use a Custom State to create and display an event on the “Full Calendar” plugin.

Hope this makes sense…

Sorry, I’m unfamiliar with that setup. My plugin will accept events from any source

Perhaps another bubbler could chime in on that

Ultimately you just need to set a custom state to be the list of events and make sure it is of type event (or what ever you call it in your database) and make sure the custom state is a list.

Then you can reference the custom states value on the full calendar plugin.

From there you can filter based on the date ranges you allow a user to choose.

One of the best ways to get the ability to filter by date ranges is to use the list shifter plugin to check if date ranges overlap other date ranges (in your case the date ranges will be your events).

Working with dates and date ranges can be complex.

1 Like

Thanks for the help @jared.gibb jared.

@boston85719 I’m not sure I follow.
I created a calendar element “Calendar A”, an input for a “start time”, “end time”… with a submit button and a custom state list associated with Calendar A called “calendar event” of type “Schedule”. In my database I have a data type “Schedule” that only has one created field called “events” which is a date range (I’ve also tried two fields for a separate start time and end time).

For Calendar A’s “type of events” I selected “Schedule” (i.e. what it is called in the database) and for the “data source” I list “Calendar A’s calendar event” which the system sees as acceptable (i.e. blue). However when I go into the workflow to add a range to the custom state list using the start time and end time input values (i.e. :plus) they are disabled and there is no way for me to add values to the “calendar event” list as a <-Range-> (i.e. they’re disabled in the screenshot below).

Even when changing the custom state list to a list of individual dates so that I can populate the custom state “start time” with the start time input and the custom state “end time” with the end time input so that I can then add those to the “calendar event” list as a date <-Range->. I’m unable to get it to work.

I’ve played around with using custom states for repeating groups and have watched the training video ( https://bubble.io/video-course/how-to-use-custom-states-1611172317504x526496571283210240 ) and I believe I have a basic working understanding of how to use custom states in that situation but for some reason using a custom state for the calendar is driving me crazy… I have also been unable to find any examples of someone holding calendar events in a custom state list.

I appreciate you all’s help. Worst case scenario I’m just going to have to simplify my approach and limit the search but the ideal is to allow a person to enter multiple search criteria (e.g. Monday from 8AM-10AM, 1PM-3PM and 8PM-11PM, Wed 12PM-4PM, etc. over the course of a day, week or month) so that a guest can visualize their time on the calendar, and easily modify these windows of time to filter for events that fall within those windows of time.

I’m not really sure of where your setup might not be compatible. I use the list shifter element to hold lists of things…from that I am able to use it as the source for the calendar element. The list shifter allows for making changes to the lists. It also can hold up to four different lists at the same time.

1 Like

Okay, I’ll look into that! Thanks!