Timeline row refresh, a GDPR uplift, and navigation polish
A polish-and-paperwork batch. The planner timeline got a layout pass to make a busy ROS easier to scan, the legal pages got the uplift they needed to stand up under GDPR scrutiny, and the sidebar navigation now stays where you’d expect it on a tall screen.
Timeline row refresh
The planner timeline used to put Where and Details in collapsed rows you had to expand to see. On a busy ROS that hid useful context. The row layout has been rebuilt:
- Where now sits inline with the item Title (it wraps below the title on narrow screens).
- Details is its own column between Responsible and Actions, so the briefing note for each item is visible at a glance without expanding anything.
- Rows with content start expanded. Empty rows start collapsed so they don’t waste vertical space.
- An eye-icon toggle in the header hides the Insert-row dividers once your schedule is locked in. The preference is remembered per browser.
The mobile breakpoint moved up so the wider layout has room to breathe. Below that, the row stacks the way it used to.
Sticky sidebar with View Transitions
The planner drawer sidebar is now pinned with sticky positioning. Scroll a long Events list and the sidebar nav stays put instead of disappearing off the top. Long pages no longer inflate the document height past the viewport.
Navigation between pages in the planner now uses the View Transitions API where the browser supports it. The result is a soft fade between pages instead of a hard flicker. On Chromium and Safari 18+ this is automatic. Older browsers still navigate the way they always did.
The drawer also speculatively prefetches destinations as your pointer approaches a link, so /Events, /Contacts, /Spaces, /Requests, and /Branding feel instant when you click. Firefox doesn’t yet support either API and degrades gracefully back to a normal click.
GDPR uplift on the legal pages
The Privacy Policy was rewritten this batch to reference Article 6 lawful bases explicitly. The Terms of Use now describe the Article 28 processor obligations 1pm takes on when you upload personal data about your crew, your clients, and your guests. There’s a new public Subprocessors page that lists every third party we hand data to (Azure, Cloudflare, Stripe, Resend, Loops, Bouncer), what it’s used for, and where it’s based. Adding or swapping a subprocessor triggers a 30-day notification window, so anyone with a paranoid security review can rely on the page to stay current.
Terms version bumped to 2026-05-22, which means existing accounts will see a one-time re-acceptance prompt on their next sign-in.
No cookie banner. 1pm only sets strictly-necessary cookies (auth, antiforgery, session), which fall outside the ePrivacy consent rules. If we ever add analytics that need consent, that decision will come with a banner. Today it doesn’t.
Event edit modal polish
The event edit modal got a sticky action bar so the Save and Cancel buttons are always reachable without scrolling, even on a long BEO event with a full menu pasted in. Internally the SSE heartbeat that powers real-time updates is more aggressive about declaring itself alive, so the “live” indicator on share links stops flapping over flaky venue Wi-Fi.
Crew portal touches
The vendor portal page now reacts to hover, carries a subtitle naming the planner, and exposes a Share button (Web Share API on mobile, copy-link fallback elsewhere) so crew can pass their portal URL on to a colleague at the same supplier when they need to.