{{-- The Booking Entity Type confirmation dialog — CR-15.2 §7 item G1. @include('bookings.partials.booking-type-modal', ['booking' => $booking]) Included by the EDIT twin only, at the END of its content section rather than inside a card, for the reason inquiries/partials/complete-task-modal.blade.php records: a Bootstrap dialog is `position: fixed`, but its containing block is whatever ancestor establishes one, so nesting it inside a `.card` (which the wireframe gives `overflow: hidden`) is a way to have it clipped on some browsers and not others. ## Why the create twin does not get it There is nothing to compare against. The dialog exists to warn that CHANGING a type discards paperwork the new type no longer asks for, and a booking being created has neither an old type nor any documents. The twin rule (recipe §9) is about FIELDS, and this adds none — the two forms still post exactly the same names, which is what TwinViewParityTest asserts. ## The client's words, verbatim (CR-8 §0.1 — no lang file) Title, sentence and both bullets are the client's own text from the CR-15.2 instruction, character for character, written here because this module keeps its wording where it is shown. ## It is a WARNING, not the rule Nothing here decides anything. BookingService::applyBookingTypeEffects() does the deletion on every type-changing update — this dialog included, a hand-rolled POST included — and **no confirmation token is posted**: the form below carries no extra field, and Confirm does nothing but let the submit that was already prevented go ahead. A dialog whose Cancel could be bypassed by deleting a hidden input would be a dialog that lied about being a control. ## No around it Unlike the CR-10 dialog this is modelled on, this modal is not its own form: it is a gate in front of the edit twin's existing one. Its Confirm button is therefore `type="button"` and the module submits `#nrems_booking_form` itself. Wrapping it in a second form would give the page two forms posting to the same route, and the one the user filled in is not the one the dialog would submit. Params: booking the booking being edited; its CURRENT type id is what the module compares the select against. --}}

Changing the Booking Entity Type may affect the documents uploaded for the customer and co-applicant.

  • Documents that are still required for the new Booking Entity Type will be retained.
  • Documents that are no longer required will be deleted.
{{-- Cancel is `btn btn-outline` and dismisses only — the submit was already prevented, so "stay on the same screen with the edits intact" is what happens by doing nothing. --}} {{-- `type="button"`: this button belongs to no form. See the header. --}}
@push('scripts') {{-- The guard (CR-15.2 §7 items G1/G6). A module of its own rather than a branch of nrems-booking-form.js — its header states both reasons. It does nothing at all on a page without #nrems_booking_type_guard, so the create twin loading the same stack is unaffected. --}} @endpush