Closed ankitguptaindia closed 1 year ago
@faisal-alvi As discussed https://github.com/woocommerce/woocommerce-accommodation-bookings/pull/303#issuecomment-1379894352, I added issues here on this ticket to discuss/fix.
@jeffpaul @vikrampm1
IMO,
I think that is expected behavior because the 6th Dec seems to be closed for new check-ins, but existing visitors can check out on that day. If we block the 5th Dec for check-ins, Hotel will lose an extra booking day.
Comment source: https://github.com/woocommerce/woocommerce-accommodation-bookings/pull/303#issuecomment-1370684378
On the unavailable days, we must decide what to restrict: do we restrict only check-ins, only checkouts, or both? There will be at least 2 days of booking loss if we prevent both. I believe that we should merely suspend check-ins (which the plugin does already but it does not allow users to select an "unavailable day" as a "checkout day", it is seen selected in the cart as shown in the video above).
cc @dkotter
If the store/hotel/whatever has a day set as unavailable, there should be no options to check in or out on that day. If they're closed on the 6th (for whatever reason) then it would seem with the example above that you could only checkin & out on the 5th with no bookings that span across the 6th.
I'm having similar problems to this, I think. If you select a date that doesn't have any minimum stay length, then it will try to quote it for 1 night, without forcing you to select an end date.
This means that at the end of the season you can select a check in and it will let you book for the last day, which should be a check-out only day.
@rtpHarry I could see a case where there's no minimum block set (e.g. 1 day) that would allow this sort of booking, so either that case is intended or the store owner should update their settings to ensure that sort of booking is not feasible
@ankitguptaindia While attempting to resolve this problem, I discovered that it has already been resolved in PR https://github.com/woocommerce/woocommerce-bookings/pull/3328. You may verify that the problem is no longer reproducible in the trunk
by checking. Once you confirm, we can close this ticket.
Now when we select a check-in day just one day before the unavailable day, we see a note Sorry, the selected block is not available
.
Thanks @faisal-alvi for checking this. I will cross-check and update here.
Hello @faisal-alvi
Upon further investigation, I have confirmed that Use Case- 1 has been resolved by trunk branch. However, Use Case- 2 has yet to be addressed and requires further attention as this didn't fix by PR https://github.com/woocommerce/woocommerce-bookings/pull/3328
https://user-images.githubusercontent.com/6384299/217445705-4a150dcb-ff5f-493e-8cb4-356c39b8e6b3.mp4
@ankitguptaindia I appreciate your efforts to identify and report the issue. However, upon reviewing the details again, I still do not believe that this is a bug, but rather a feature that is working as intended.
As a store owner, I would like to block bookings on Saturdays and Sundays but still allow them on Fridays. In this case, it would be expected that bookings made on Fridays would end on Saturdays, and that is fine.
If we were to consider this as a bug and implement a fix to block check-outs on Saturdays, it would block bookings on Fridays as well. As a result, a store owner who only wants Saturdays and Sundays to be unavailable would have to manually block Sundays while expecting Saturdays to be automatically blocked, which does not seem ideal. They would choose both days in a back end and make them unavailable if they wanted Saturdays and Sundays to be restricted, not just Sundays.
cc: @dkotter
Watching the video that Ankit has for use case 2, the problem as I understand it is we have a product that should not be available on Saturdays or Sundays but if you create a booking starting on Friday, that booking is allowed to span Saturday and Sunday and end on a Monday or Tuesday. That does seem like a bug in my mind. In this scenario, my assumption as a store owner is that you could have a booking that checks-in on Friday and checks-out on Saturday, but no check-ins on Saturday and no check-ins or check-outs on Sunday.
This does get into the idea of adding the ability to restrict days for check-ins and check-outs separately from restricting an entire day, which makes more sense in my mind for this extension, though it's just inheriting what Bookings has.
@dkotter @ankitguptaindia I have investigated and debugged in the codebase and there does not seem anything coded to prevent bookings through the non-restricted days (Saturday & Sunday in our example).
Also, I found that as per the doc, the restricted days are to allow customers to start or end on the ticketed restricted days and still allow them to book through the non-restricted days but not able to select them.
Restrict the days of the week that can be selected on the calendar; this will not affect your availability.
If we want to disallow booking through Saturdays and Sundays, we need to add an availability rule instead of using the restricted days option.
With Restricted days | With Availability Rule |
---|---|
Closing considering expected behaviors, not bugs. Feel free to re-open if required.
Found these scenarios at the time of testing PR https://github.com/woocommerce/woocommerce-accommodation-bookings/pull/303 Also happening with trunk branch as per finding here https://github.com/woocommerce/woocommerce-accommodation-bookings/pull/303#issuecomment-1379894352
Use Case- 1 Suppose a hotel is closed for cleaning on 6 Dec and Availability is set from Booking's Store Availability setting (refer to video explanation for more details). When the user tries to Check-in on the 5th Dec then it allows them to check-in but does not allow to check out on 6th. (All good till now.) But if a user doesn't select the checkout date then it is automatically select 6th (which is not available for checkout due to store availability ) and booking is completed on the not available day.
Video Explanation-
https://user-images.githubusercontent.com/6384299/205322747-6a80f60b-1c99-4a24-aae2-1a30c3f5a426.mp4
Use Case-2 Almost similar to the above but different booking rule: When some days are restricted from Booking "Restrict selectable days?" in the Booking setting and customer use those days in between bookings, those are getting booked.
https://user-images.githubusercontent.com/6384299/205326444-10b4c506-b4d9-4cce-acb9-7d99d03a9a83.mp4
Steps - Refer above videos for a detailed explanation of the steps.
Test Env-