The Calendar is the hotel as a timeline: rooms down the side, days across the top, and every reservation drawn as a bar colour-coded by status.

Reading it

Filters

  1. Status pills — show only confirmed, checked-in, etc.
  2. Floor filter and hide empty rows — focus the grid.
  3. Guest search — type a name and every other bar dims.

Drag-and-drop room moves

Checked-in bars have a grip handle: drag one onto another room's row to start a transfer. A modal asks for the reason, then performs the same swap as the Transfer Room button (old room → dirty, new room → occupied). Only a room that is available or clean can receive the guest — a dirty room awaiting housekeeping is refused as well. You can still drag onto one, but the transfer window says so and the confirm button stays disabled.

Use the month navigation to plan ahead. Two differences are worth knowing before you read an empty row as free: the calendar also draws stays that have already checked out, and it lists every room — including any under maintenance or out of order, which the booking form leaves out of its picker entirely. The booking form is the authority on whether a room can be sold.