1

I'm having trouble getting the rEEservation form to show up properly on my website. The basic form shows up okay, but it's not showing the options for which I created channels for. When 'proceed' is clicked, it leads to an error page saying, 'The object for booking is not provided' - because there was no way to select the options.

I'm trying to create a reservation system for 2 tables at a cafe, for 3 hour slots from 11am - 11pm. This is how it's set up at the moment: Channel: reserve_table Channel Fields: {table} which is a text input field Channel Entries: 8 of them (Table 1: 11am - 2pm; Table 1: 2pm - 5pm; Table 1: 5pm - 8pm; table 1 - 8pm - 11pm - and then repeated for Table 2).

The template code:

{exp:channel:entries channel="reserve_table"}
<h3>{title}</h3>

{exp:reeservation:form entry_id="{segment_2}"}
<p>Name: <input type="text" name="name" /></p>
<p>Email: <input type="text" name="email" /></p>
<p>Phone*: <input type="text" name="phone" /></p>
<p>Booking date*: <input type="text" name="date_from" id="date_from" value="{current_time format="%Y-%m-%d"}" /></p>
<p>Leave a comment for your booking: <textarea name="comment"></textarea></p>
<p><input type="submit" value="Proceed" /></p>
{/exp:reeservation:form}
{/exp:channel:entries}

Ideally, the customer would be able to select a table time slot on a particular date (dropdown menu perhaps?), and have it verified that the time slot has not already been booked.

I've scoured the docs and just can't seem to move it past the point i'm at. I can add manual reservations, but not from the website. How do I get the channel entries list to show up? Where does the exp:reeservation:check (or do I use exp:reeservation:check_multiple?) code go? And if I were to use the Simple Calendar code, which is provided, where does that go?

If anyone who has successfully used rEEservation before can help, or even let me peek at your template code, I would greatly appreciate it. Thanks!

==== Update: Problems solved!

I got rEEservation working with lots of help from Yuri. In the end, I now have 4 channel entries, one for each time slot. In the rEEservation settings, I have it set so that each time slot (or 'object') can be booked a maximum of 2 times per day (because there are two tables which can be booked). My final template code looks like this:

<code> {exp:reeservation:form return="bookings/thank_you"}
        <p>Table/slot*: <select name="entry_id">
        {exp:channel:entries channel="reserve_table" dynamic="no" disable="categories|custom_fields|member_data" orderby="title" sort="asc"}
        <option value="{entry_id}">{title}</option>
        {/exp:channel:entries}
        </select></p>
        <p>Name*: <input type="text" name="name" /></p>
        <p>Email*: <input type="text" name="email" /></p>
        <p>Phone*: <input type="text" name="phone" /></p>
        <p>Booking date*: <input type="text" name="date_from" id="date_from" value="{current_time format="%Y-%m-%d"}" /></p>
        <p>Leave a comment for your booking: <textarea name="comment"></textarea></p>
        <p><input type="submit" value="Proceed" /></p>
        {/exp:reeservation:form}</code>
1

You have 2 way to let user book each table/slot.

First is to display separate for for each entry. To do this, change {exp:reeservation:form entry_id="{segment_2}"} to {exp:reeservation:form entry_id="{entry_id}"}

Another option is to present table/slot selection as dropdown field. Then your code will look like:

{exp:reeservation:form}
<p>Table/slot*: <select name="entry_id">
{exp:channel:entries channel="reserve_table" dynamic="no" disable="categories|custom_fields|member_data"}
<option value="entry_id">{title}</option>
{/exp:channel:entries}
</select></p>
<p>Name: <input type="text" name="name" /></p>
<p>Email: <input type="text" name="email" /></p>
<p>Phone*: <input type="text" name="phone" /></p>
<p>Booking date*: <input type="text" name="date_from" id="date_from" value="{current_time format="%Y-%m-%d"}" /></p>
<p>Leave a comment for your booking: <textarea name="comment"></textarea></p>
<p><input type="submit" value="Proceed" /></p>
{/exp:reeservation:form}
0

Alissa, I looked sort of around on your problem, partly out of interest to know what was available as far as booking engines. Not any direct answer resulted, as you'll see, but maybe what's here will help gain a solution.

Would have to say that rEEservation doesn't seem to be able to handle hourly reservations, at least that I could find, plus there is a message from the developer saying it won't, here. Yuri seems to be a quite responsive and nice guy, but this add-on appears to have some history from comments elsewhere, and anyway may not be a fit.

I looked for alternatives to handle such a case If I were doing it, and came up with two approaches, roughly.

  • Embed a PHP code library solution alongside EE, where BookingWizz may seem an example, and has an online demo where you can see the first page doing slots during a day such as you require. There's a one-time low cost to license, plus work you'd need to do to integrate any value-passing and match site styles, perhaps not too deep, but you'll know. How good is it? Lots of nice recommends - and the occasional not at all satisfied customer on their forum that you may find anywhere. It's not responsive, out of the box, but that's just markup work, isn't it? Looks like the developer answers often. Risk - some, until you try it and see.

  • Slot in a SAAS offer, which means mainly adding some html/css/js they provide, plus again any value-passing integration. I kind of liked the look of Planyo -- also they're Swiss ;) -- which has a monthly CHF 24 (about GBP 17), and a lot of features. BookingBug is a somewhat more expensive UK one, but perhaps with some advantages in connecting. These cost a lot more obviously, and it is on-going. Advantages may be that they keep things up-to-date?

So, a few ideas, anyway. Interested in how you end up solving this site.

3
  • Hi narration_sd - thanks so much for your response! Ideally I'd like to stick with rEEservation if possible as it works from within the EE CP. If I can't, then the alternatives you posted look very interesting. I'd hate for my client to have to use a different control panel to manage the bookings, but as a last resort these look pretty good. Thanks again. I emailed Yuri, the rEEservation developer, for help - i'll let you know if I hear back. – Alissa J. Robinson Jul 19 '13 at 12:37
  • Sounds good, Alissa. Actually, I just looked over what Yuri has posted now above, and it looks like it might work without worrying about 'hourly' capabilities of Reeservation. That's because the hourly aspect is handled by the way you set up the hours blocks as items, rather than by Reeservation directly. Items on days, in other words. So it may work as you wish, and good on Yuri. Nice to hear how it does, thanks - Clive – narration_sd Jul 19 '13 at 21:58
  • great -- that's a good model then above where you put it in a follow-on to your original question. I gave Yuri's answer a plus ;), and case closed, ready for someone else to find. Looks like his EE add-on can be pretty useful, understood in this way. – narration_sd Jul 26 '13 at 8:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.