Conference room booking app - different durations when using 30-minute time slots?

Hi there,

I’m building a conference room booking app and am trying to figure out how users can make bookings with different durations. However, I’ve had no luck and am quite confused, so I thought I would turn to this for some help.

I have created an option set with text options from 00:00 to 23:30, with intervals of 30 minutes. Currently, the user can only book a conference room for 30 minutes or several 30-minute time slots. I’m looking for a way to allow the user to book a conference room for different durations, 30-minutes, 1 hour, and 1.5 hours. Also, what would an availability function (users searching for available rooms) look like when there are more variables in place?

How would you solve this? Thanks in advance! Let me know if I can clarify anything.

Screenshot of interface

Database setup:

Best regards,
Niklas