By Junaid Ahmed
I found this one right after fixing a different calendar problem, which is becoming a pattern.
My booking page knew how to skip yesterday. It did not know how to skip this morning. So at three in the afternoon, a guest opening my link and clicking today would see nine o'clock, ten o'clock, eleven o'clock, all sitting there looking bookable. Times that had already come and gone while I was on other calls.
Nobody had booked one yet. But nothing was stopping them.
The part that bothered me more
The page was wrong, and I could fix the page. What bothered me was that the server would have taken it.
When a guest submits the booking form, that request goes to PodGlue and PodGlue writes it down. And that step was only checking one thing: is this a real date? Not "is this date still ahead of us." So even if the calendar showed the right times, a browser tab left open since morning, or a guest who took a while filling out the form, could still send through a time that had passed. And it would land in my bookings like any other.
You can't trust the page to be the last line. The page is just what someone happens to be looking at.
What changed
Today only shows what's still ahead. At 3pm you see 3:30 and 4:00, not 9:00. Once the last slot of the day goes by, today stops offering anything at all and the dot clears.
The clock is read fresh every time the list is drawn, so if you leave the page open through the afternoon, it keeps up rather than freezing on whatever time it was when you first opened it.
And the server now checks too. If a booking comes in for a time that's already passed, it's turned away with a plain sentence, "That time has already passed. Please pick a new time.", instead of quietly saving it. There's a two-minute cushion, because a guest's laptop clock and my server's clock are never exactly the same, and I'd rather be forgiving by a couple of minutes than reject someone who did nothing wrong.
What's next
Right now a slot starting this second still counts as bookable. That's technically correct and practically a little silly, nobody is joining a recording with zero notice. A minimum lead time, where you decide how much warning you need before someone can grab a slot, is the natural next step.
A booking page that shows you a time you can't actually have is worse than one that shows you fewer options. Fewer and true beats more and wrong.
Ready to make every episode compound?
PodGlue is the operating system for relationship-driven podcasters.
Get Started FreeRelated reading
Blocking an Hour Was Costing Me the Day
I blocked 2pm to 3pm for an appointment. My booking page quietly took the whole day off. And a booking I'd cancelled was still holding its slot hostage.
My Booking Page Said Come Back in October
My Thursdays were wide open. My booking page told every guest the soonest I could talk was two months out. It was wrong in both directions at once, and no error was ever logged.
A Discovery Call Is Not an Interview
My booking page treated a 15-minute chat and a 90-minute recording as the same thing. Offering one meant offering both, and I'd been quietly working around it for months.