I've begun work on a Hotel Booking System module for ubercart.
It will:
- Provide a Hotel Room Node type
- Provide a "Booking Widget" Search Block
- Allow different Rates & Quantities for every day for each room node
- Create a custom 'product' node when a user chooses to book something from their search results; containing all the relevant info from that search, and add it to the cart.
- "Expire" room availability via cron, Room availability expiration will be configured so that dates equal to and older than the selected expiry date are expired -- expiry date options are Yesterday, Today, and Tomorrow
I think that's it. If I have forgotten something, please feel free to chime in. I know there have been several people looking for similar functionality in the past and existing solution(s) are less than helpful. (The only one I could find, openresort, wouldn't work for me at all, and their docs are not helpful in that area -- and it's geared more toward multiple properties than a single hotel)
The first version of this module (with functionality as listed above) should be available by March 1, 2009.







I think that would be a great thing to have. If I may make a request ... try not to make your module hotel specific. The general features you outline above could easily describe theater tickets, airline seats, doctor's appointments, library book checkouts, etc. Basically any situation where you have a limited number of rooms/seats/time slots/etc. which can each be purchased/reserved for a specified duration at a specified time.
I also suggest making sure your implementation of reservations is thread-safe to avoid double booking.
<tr>.