I thought Reservation Template might help here, but I don't know how to use it. It offers a new content type, and I was able to create a node of that type, but then what?

Also, two of my test reservations showed up in the drop-down list, but I'm unable to get a third one into that list.

Could the Date Repeat API possibly help here?

Comments

kreynen’s picture

Version: 6.x-1.0 » 6.x-2.x-dev
Component: Miscellaneous » User interface
Category: support » feature
Status: Active » Needs work

This is a common request. I know Darrick did some work to add support for date's repeat functionality. While you can unlock the merci_date field and change the Date field settings to include the option for reoccurring dates, MERCI's conflict checking wasn't designed to handle multiple nodes.

There are a number of issues to consider here including the UI and performance. If I'm reserving 5 items for 10 hours of every Monday for 10 weeks and each of those items are buckets with 10 items, to check each 15 minute increment for all the items for all the days would require 20,000 checks.

If there is a conflict with some of those items on some of those days, what does that look like in the UI?

Are the nodes for the days without conflicts saved or is it an all or none process?

Do we support recursive changes requiring us to recheck for conflicts with all the related nodes?

It's not that this can't be done, but it's more complicated that just adding the Date repeat option.

jonathanhuot’s picture

I'm currently using MERCI with Node repeat module. It is working like a charm. I don't know if conflicts are handled the good manner, actually I have not tested because it is not my needs.

Maybe it is a good start ?

darrick’s picture

I think node_repeat is the best option as well. The code I commited @kreynen is referring to, more or less allowed a reservation and it's children nodes to be created via node_save. I ran into the problem when deleting a organic_group and moving it's posts (which included reservations) to another group. To do this organic groups copies the reservation to a new node then deletes the old node. You don't want any validation in that case.

For node_repeat you do want validation when the new node is created. Problem is node_repeat doesn't call the validation. There is an issue about that here: http://drupal.org/node/796254 but I don't think the solution is headed the right way.

nscad_nathan’s picture

Darrick, by checking validations, do you mean the problem is that repeating nodes aren't checked for conflicts when they are created?

If I make the repeating reservations before other bookings are made, will later bookings be validated against the repeating nodes?

Or am I completely missing what's going on?

darrick’s picture

Yes, reservations created via node_repeat are not checked for conflicts. Yes, once created they are like any other reservation and later bookings will be validated against them. No, you're not missing what's going on.

nscad_nathan’s picture

Okay, thanks!

This is less than ideal, but not such a huge issue for my situation. Most repeating bookings will be for rooms, and I will do them at the beginning of the semester based on class schedules.

skriptble’s picture

I know this topic is kind of old but I've set up MERCI for one of my clients and we're looking to expand some things about it. Among several other things it's been determined that reoccurring reservations need to be done. I was wondering if anyone had done any work on this already or if any one could offer some guidance/a starting point for me. I was planning on going over the code as is and trying to build an add on module that would do this (I wanted to use as much of the conflict checking as I could). I'm currently using the D7 version of MERCI.