Layout options for the public booking form #16

Closed
opened 2026-10-12 21:21:29 +02:00 by pepa · 0 comments
Owner

Depends on #13; the controls belong to the settings page with live preview from #14.

A few switches instead of a free layout editor:

  • Content width: full width (current) / centred column with a maximal width.
  • Arrangement: "Booking" and "Who is booking" cards side by side (current) / below each other.
  • Time slots: normal / large buttons (easier to hit on a phone).
  • Corners: rounded (current) / square — applies to cards, buttons and inputs.

Notes

  • Each option is an enumerated value in the appearance table, validated on the server, and ends up as a class or CSS variable on the public page wrapper; the markup of src/pages/public.rs stays the same for all combinations, so there is nothing new to go wrong in hydration.
  • Side by side still collapses to one column on a narrow screen.
  • The booking form in the "Create booking" dialog of the admin portal keeps the default layout.
  • Defaults equal the current look.

Out of scope

A timetable view of the slots (properties × hours in one grid) would need a rewrite of TimeSelector; to be considered separately.

Acceptance

  • Every option shows in the live preview and on the public page; all combinations checked at mobile and desktop width.
  • Unit tests for validation of the values.
Depends on #13; the controls belong to the settings page with live preview from #14. A few switches instead of a free layout editor: - Content width: full width (current) / centred column with a maximal width. - Arrangement: "Booking" and "Who is booking" cards side by side (current) / below each other. - Time slots: normal / large buttons (easier to hit on a phone). - Corners: rounded (current) / square — applies to cards, buttons and inputs. ## Notes - Each option is an enumerated value in the `appearance` table, validated on the server, and ends up as a class or CSS variable on the public page wrapper; the markup of `src/pages/public.rs` stays the same for all combinations, so there is nothing new to go wrong in hydration. - Side by side still collapses to one column on a narrow screen. - The booking form in the "Create booking" dialog of the admin portal keeps the default layout. - Defaults equal the current look. ## Out of scope A timetable view of the slots (properties × hours in one grid) would need a rewrite of `TimeSelector`; to be considered separately. ## Acceptance - Every option shows in the live preview and on the public page; all combinations checked at mobile and desktop width. - Unit tests for validation of the values.
pepa closed this issue 2026-10-12 22:27:30 +02:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ITsolved/rezervovator#16