Room planner: fix settings scroll, checkout time to left-bracket sliver

- Settings page: add overflow-y:auto + flex:1 so content scrolls within
  page-content (which has overflow:hidden)

- Checkout time: move departure time out of B2B card stats row and into
  the left-bracket sliver, matching original plugin behaviour:
  - Only shown while prev booking status is still 'arrived' (not yet
    checked out); collapses to normal bracket once NewBook flips to
    'departed'
  - Positioned absolutely over the ::before left bracket area
  - Remove the forced 'departed' override on prev_status — let NewBook's
    real status drive bracket colour so the sliver shows correctly

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
jtricerolph 2026-07-04 12:30:27 +00:00
parent 89ad3811da
commit 9ef047900b
3 changed files with 41 additions and 16 deletions

View file

@ -113,12 +113,10 @@ export function classifyRoom(site, allBookings, viewDate, yesterday, tomorrow) {
// the card right — it ends tonight and its right border should be visible.
const spansNext = !!primaryBooking && !!departureDate && departureDate > tomorrow
// Previous-day bracket: if the previous booking departs TODAY, force "departed"
// colour regardless of whether NewBook has updated its status yet.
const rawPrevStatus = prevBooking ? (prevBooking.booking_status || '').toLowerCase() : null
const prevStatus = (rawPrevStatus && toDateStr(prevBooking?.booking_departure) === viewDate)
? 'departed'
: rawPrevStatus
// Previous-day bracket: use real NewBook status so the sliver remains 'arrived'
// (wide, with checkout time) until the guest actually checks out and NewBook
// flips the status to 'departed'. Do not override — let real status drive colour.
const prevStatus = prevBooking ? (prevBooking.booking_status || '').toLowerCase() : null
// NewBook may return category info as flat fields or a nested object.
const catId = site.site_category_id ?? site.category_id ?? site.category?.id ?? null