Problem/Motivation
The SeriesGenerator that sets up and validates the reservations for bulk room reservations has a loop that overwrites itself. So if there is a conflict within the middle of the check but the later dates are available it will mark the room as available.
Steps to reproduce
Setup a reservation that repeats itself and make sure the last date it checks is available but any of the previous dates have a conflict. It will let the registration go through.
Proposed resolution
The validation of the room should be blocked if any of the dates are unavailable. It should maintain the check throughout and not overwrite it.
Remaining tasks
User interface changes
API changes
Data model changes
Issue fork intercept-3614844
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #4
velmir_taky commentedThe room's availability was being set inside the per-date loop, so the last date won - a conflict on an earlier date got overwritten by a later free one and the room came back as available. Now the room starts available and only ever flips to disabled, so any conflicting date blocks the whole series.