On Shell, List, Record, Reports, Calendar
Phone sheet, open
Shell with More and the account menu
List with Filters
Awaiting payment
Source
<details>
<summary>Shell with More and the account menu</summary>
<Kit.Phoenix.Layouts.Shell.shell print_identity={@print.identity} print_subject={@print.subject} print_standing={@print.standing} print_tenant={@print.tenant} product="Hallkeeper" tenant={Kit.Phoenix.Tenant.follows("Oakmere Village Hall")} navigation_label="Application" navigation="rail" density="field">
<:destination href="?destination=main#main" current icon="house" bar>Work</:destination>
<:destination href="?destination=diary#main" icon="calendar" bar>Diary</:destination>
<:destination href="?destination=rooms#main" icon="buildings" group="The building">Rooms</:destination>
<:destination href="?destination=repairs#main" icon="wrench" group="The building">Repairs</:destination>
<:destination href="?destination=payments#main" icon="credit-card" group="Money">Payments</:destination>
<:destination href="?destination=statements#main" icon="chart-bar" group="Money">Statements</:destination>
<:account name="Jonathan Bell-Whitmore" initials="JB" email="jon.bell@oakmerevillagehall.org.uk" workspaces_label="Your halls" />
<:context name="Oakmere Village Hall" href="?hall=oakmere#main" current />
<:context name="St Anne's Church Hall" href="?hall=st-annes#main" />
<:account_settings href="?destination=account-settings#main" />
<:sign_out action="?sign-out" />
<:rail_head href="?destination=main#main" />
<:subject>Post-hire checks due</:subject>
<:body id="main">
<Kit.Phoenix.Layouts.Home.home subject_state={Kit.Phoenix.State.none()}>
<:assigned_upcoming rest={%{"aria-labelledby": "role-phone-sheet-assigned-title"}} heading="Assigned to you" heading_rest={%{id: "role-phone-sheet-assigned-title"}}>
<Kit.Phoenix.Roles.Row.row>
<:subject href="../../../record/">Main hall</:subject>
<:facts>Fold the stack chairs back against the store room wall</:facts>
<:facts>Today</:facts>
</Kit.Phoenix.Roles.Row.row>
<Kit.Phoenix.Roles.Row.row>
<:subject href="../../../record/">Kitchen</:subject>
<:facts>Check the stopcock, the extractor and the fridge seal</:facts>
<:facts>Today</:facts>
</Kit.Phoenix.Roles.Row.row>
<Kit.Phoenix.Roles.Row.row>
<:subject href="../../../record/">Toilets</:subject>
<:facts>Check the locks, the hand dryers and the floor drains</:facts>
<:facts>Today</:facts>
</Kit.Phoenix.Roles.Row.row>
</:assigned_upcoming>
</Kit.Phoenix.Layouts.Home.home>
</:body>
</Kit.Phoenix.Layouts.Shell.shell>
</details>
<details>
<summary>List with Filters</summary>
<Kit.Phoenix.Layouts.List.list subject_state={Kit.Phoenix.State.none()} toolbar_rest={%{"aria-label": "Invoice views and controls"}} filters_id="role-phone-sheet-list-filters" filters_label="Filters">
<:saved_views>
<Kit.Phoenix.Roles.LocalTabs.local_tabs id="role-phone-sheet-open-saved-views" label="Saved views">
<:tab href="?view=awaiting&page=1" current>Awaiting payment</:tab>
<:tab href="?view=paid&page=1">Paid this month</:tab>
</Kit.Phoenix.Roles.LocalTabs.local_tabs>
</:saved_views>
<:search id="role-phone-sheet-list-hirer-form-group" label="Search invoices" control_value="Oakmere Primary School" control_rest={%{id: "role-phone-sheet-list-hirer", placeholder: "Find invoices by hirer name"}} />
<:filters><Kit.Phoenix.Layouts.List.sort id="role-phone-sheet-list-sort-form-group" columnless_order={true} control_value="relevance" control_rest={%{id: "role-phone-sheet-list-sort"}}>
<:label>Sort</:label>
<:option value="relevance">Relevance</:option>
<:option value="hirer">Hirer, A to Z</:option>
<:option value="hirer-desc">Hirer, Z to A</:option>
<:option value="amount-desc">Amount due, largest first</:option>
<:option value="amount">Amount due, smallest first</:option>
</Kit.Phoenix.Layouts.List.sort></:filters>
<:rows rest={%{"aria-label": "Invoices"}}>
<Kit.Phoenix.Roles.Row.row>
<:subject href="../../../record/">Oakmere Primary School</:subject>
<:facts>Awaiting payment</:facts>
</Kit.Phoenix.Roles.Row.row>
</:rows>
</Kit.Phoenix.Layouts.List.list>
</details>
<details>
<summary>Calendar with Filters</summary>
<Kit.Phoenix.Layouts.Calendar.calendar :let={subject_region} subject_state={Kit.Phoenix.State.none()} range_days={Kit.Phoenix.Time.day_range(reader(), ~D[2025-04-14], ~D[2025-04-16])} toolbar_rest={%{"aria-label": "Calendar controls"}} scope_id="role-phone-sheet-calendar-filters" filters_label="Filters">
<:today label="Today" />
<:previous label="Previous week" href="?week=previous" rest={%{rel: "prev"}} />
<:next label="Next week" href="?week=next" rest={%{rel: "next"}} />
<:date><Kit.Phoenix.Roles.FormGroup.form_group id="phone-sheet-open-date"><:label>Go to a date</:label><:control :let={binding}><Kit.Phoenix.Roles.DateField.date_field binding={binding} reader={reader()} name="date" value={Kit.Phoenix.Roles.DateField.Committed.day(Kit.Phoenix.Time.day(reader(), ~D[2025-04-14]))} today={Kit.Phoenix.Time.day(reader(), ~D[2025-04-14])} direction={:either} /></:control></Kit.Phoenix.Roles.FormGroup.form_group></:date>
<:scope>
<Kit.Phoenix.Roles.FormGroup.form_group id="role-phone-sheet-calendar-hall-form-group" kind={Kit.Phoenix.Roles.FormGroup.Kind.select()} control_rest={%{id: "role-phone-sheet-calendar-hall"}}><:label rest={%{for: "role-phone-sheet-calendar-hall"}}>Hall</:label><:option value="all">All halls</:option><:option value="oakmere">Oakmere Hall</:option></Kit.Phoenix.Roles.FormGroup.form_group>
</:scope>
<:scope>
<Kit.Phoenix.Roles.FormGroup.form_group id="role-phone-sheet-calendar-room-form-group" kind={Kit.Phoenix.Roles.FormGroup.Kind.select()} control_rest={%{id: "role-phone-sheet-calendar-room"}}><:label rest={%{for: "role-phone-sheet-calendar-room"}}>Room</:label><:option value="all">All rooms</:option><:option value="main-hall">Main Hall</:option></Kit.Phoenix.Roles.FormGroup.form_group>
</:scope>
<:view>
<Kit.Phoenix.Roles.FormGroup.form_group id="role-phone-sheet-calendar-view-form-group"><:label>View</:label><:control_set :let={binding}><Kit.Phoenix.Roles.SegmentedControl.segmented_control binding={binding} name="role-phone-sheet-calendar-view" value="week"><:option value="week">Week</:option><:option value="day">Day</:option></Kit.Phoenix.Roles.SegmentedControl.segmented_control></:control_set></Kit.Phoenix.Roles.FormGroup.form_group>
</:view>
<:actions><Kit.Phoenix.Roles.PrimaryAction.primary_action>New booking</Kit.Phoenix.Roles.PrimaryAction.primary_action></:actions>
<Kit.Phoenix.Layouts.Calendar.days subject_region={subject_region}>
<Kit.Phoenix.Layouts.Calendar.day day={Kit.Phoenix.Time.day(reader(), ~D[2025-04-14])}>
<:empty>Nothing booked</:empty>
</Kit.Phoenix.Layouts.Calendar.day>
</Kit.Phoenix.Layouts.Calendar.days>
</Kit.Phoenix.Layouts.Calendar.calendar>
</details>