Hi everyone,
I’m running into a baffling issue with a booking system I built on Bubble, and I’m hoping someone here might have insights or suggestions.
The Setup
Here’s some context about how the system is designed:
- Appointment Scheduling Logic
- Each user selects their time zone during sign-up, which is stored in a data type called
Time Zones
containing their UTC offset. - When an appointment is booked:
- The appointment time is saved in the professional’s local time and also saved in UTC for universal reference.
- The logic ensures appointments display correctly for all parties regardless of time zone, and this has been tested thoroughly. It works as intended for everyone.
- Repeating Group for Time Slots
- Another data type contains every 15-minute interval for each day (e.g., December 15th at 12:00 AM, 12:15 AM, etc., up to 11:45 PM).
- This data is hardcoded and static, unaffected by user interactions.
- Users select a date from a calendar, and the corresponding 15-minute intervals for that day are displayed in a repeating group for them to choose from as a starting time for their appointment.
The Problem
Here’s where things get weird:
- About half of the users cannot see the repeating group displaying the 15-minute intervals.
- After hours of looking for a pattern, I discovered that only the users outside of my time zone (where this app was built in) are having this problem. And not some of them, but all of them outside my time zone. Testing concluded that it is due to the users system time zone settings, regardless of time zone selected in the app.
- I tested this by changing my computer’s system time zone:
- When I set my system to my local time zone, everything works fine, regardless of the time zone selected in the app while registering.
- When I set my system to any other time zone, again regardless of the time zone selected in the app while registering, the repeating group doesn’t display any data.
Important Notes
- This issue arose only after merging changes to the live version.
- The data type for time intervals is static and should not be influenced by user input or time zones.
- Users’ system time zones seem to be causing this issue somehow, though I don’t have any workflows or logic that explicitly depend on system time zones.
- Again, these time increments are static placeholder values, independent of user time zones, used only for selection before saving the appointment with the appropriate time zone adjustments.
- All plugins used are for UI purposes (e.g., displaying data) and should not interfere with workflows.
What I’ve Tried
- Reviewed and rebuilt workflows to ensure no dependencies on system time zones.
- Manually tested data saving and retrieval logic—it works perfectly in the database.
Request for Help
I’m stumped. Has anyone experienced something similar or have ideas on what could be causing this?
- Could Bubble’s server settings / built-in elements or logic (like “user’s current date/time” - which I use in some cases I am sure, but have never been problematic before) / caching introduce time zone-related behavior?
- Is there any way or path for system time zones to influence how this static data is displayed in a repeating group?
If anyone needs more details (e.g., workflows, screenshots), I’m happy to provide them. This issue is blocking users from booking appointments and has become critical to resolve.
Thanks in advance for any help you can provide!