feat: month grid, day-view REST, modal & pretty pages (Epic #15) #107
No reviewers
Labels
No labels
area: build
area: ci
area: compare
area: model
area: plugin
area: provenance
area: rite
area: settings
area: ui
backport
blocked
breaking
confirmed
dependencies
duplicate
epic
invalid
needs-info
needs-triage
php
priority: high
priority: low
priority: medium
regression
type: chore
type: correction
type: docs
type: enhancement
type: feature
type: fix
type: perf
type: refactor
type: security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Directorium/Ordo!107
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/15-calendar-day-view"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ordo O4 — Epic #15 (Calendar & day view), built to the approved Illuminated-Breviary mockup (
docs/mockups/). Standalone/offline through the bundled Core; PHP 7.4 floor; GPL-2.0-or-later.Surfaces
[ordo_calendar]month grid (#16) — Sunday-first square cells (aspect-ratio:1/1), leading colour edge, class numeral, today ring, first-class gold box, a corner reserved for the v0.4 fasting mark. Mobile → an agenda list below the breakpoint. Month navigation lives in the page query string (?ordo_y=&ordo_m=), so stepping months is a plain link and every month is a shareable, no-JS URL. Server-rendered block shares the render callback.ordo/v1/day/{date}(#17) — public, cacheable GET; resolves the day under the site's configured calendar and returns the shared article body + a 7-day navigator window. The payload builder is a pure method, unit-tested without WordPress.hrefis followed to the pretty page./ordo/YYYY-MM-DD/pretty pages (#19) —DayRouteserves the O1 rewrite through a theme-integrated template, clears the would-be 404, titles the tab with the feast, and renders the same day view. The shareable home of a day and the no-JS fallback.Design notes
DayViewis the single day body shared by the page and the modal, so they never disagree.DayPresentergainsrankLine(),kind(),classLabel()/kindLabel(),commemorations()andtemporalName().rankOrdinal+kind, never an invented "Duplex".fastingcorner is reserved but empty (the contract'sfastingslot is null until Core v0.4).Verification
Closes #15, #16, #17, #18, #19.