Skip to content

fix(events): restore live card layout - #28

Merged
Elvis020 merged 1 commit into
mainfrom
feature/fix-dynamic-event-styles
Aug 11, 2026
Merged

fix(events): restore live card layout#28
Elvis020 merged 1 commit into
mainfrom
feature/fix-dynamic-event-styles

Conversation

@Elvis020

@Elvis020 Elvis020 commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Summary

Restore the established DevCongress event-detail experience, keep live public events styled correctly after client refreshes, repair the List/Calendar view switcher, and polish the public event-submission form.

User-facing changes

  • /events/<slug>/ uses the familiar full-cover event hero: state badge, title, date/time, and location over the event cover.
  • The About section and contextual action follow beneath the hero, matching the EMS event-page hierarchy. A single All events link remains beneath the hero.
  • Event-card covers now show only the colour-coded event status; secondary type tags have been removed.
  • Event-card dates and locations stay on one line; a long location is truncated with an ellipsis while its full value remains available on hover.
  • Card actions sit at the lower right.
  • Event-card frames remain fully visible on hover; only the cover image dims slightly.
  • The public submission Event type menu opens upward when there is insufficient space below, remains constrained to the available viewport space, and recalculates while the viewport changes.
  • The public submission cover-upload prompt is one line, with only secondary format guidance truncating when necessary.
  • Upcoming events can show Register.
  • Live events can show Join online or Watch live.
  • Past events only show Watch recording when a recording is explicitly available; otherwise they state that the event has ended and show no action.
  • Static event pages refresh their action from the live API in the browser, so a newly added recording appears without waiting for another website build.
  • The List and Calendar controls work again, including calendar navigation and live-event refreshes.
  • Dynamic homepage and All Events cards retain their designed layout after the live feed refreshes.

Implementation notes

  • Live DOM cards use narrow global compatibility styles because document.createElement nodes do not receive Astro component scope attributes.
  • The page consumes optional stream_url and embed_stream from EMS, now supplied by merged EMS PR #106.
  • Calendar data is serialized onto the page and read by a bundled module script. This avoids emitting an ES module import inside a classic inline script, which had prevented all events-page controls from initializing.
  • The Event type listbox computes available viewport space before opening and chooses its placement without changing form semantics, validation, keyboard navigation, or outside-click handling.
  • List, calendar, and detail panels remain mutually exclusive during live detail loading.

Verification

  • pnpm build — passed; 27 pages built.
  • Inspected the generated /events/ HTML to confirm the client code is emitted as a module bundle.
  • git diff --check — passed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
devcongress-website 97c98d4 Commit Preview URL

Branch Preview URL
Aug 11 2026, 02:55 PM

@Elvis020
Elvis020 force-pushed the feature/fix-dynamic-event-styles branch 5 times, most recently from 54d6271 to f610ebd Compare August 11, 2026 14:39
bubunyo
bubunyo previously approved these changes Aug 11, 2026
@Elvis020
Elvis020 force-pushed the feature/fix-dynamic-event-styles branch 4 times, most recently from 96026bd to 97c98d4 Compare August 11, 2026 14:54
- Restore the established full-cover event hero and About layout for static and live public event pages.
- Keep a single All events return link beneath each detail hero, removing the redundant header copy.
- Keep event-card dates and locations on one metadata line; long locations truncate with an ellipsis while the full value remains available in the title attribute.
- Simplify event-card covers to a single colour-coded status badge, removing secondary event-type tags from static and live-refreshed cards.
- Anchor event-card actions at the lower right.
- Preserve event-card frames during hover: only the cover image dims slightly, while event cards no longer lift into a clipping boundary.
- Make the public submission Event type listbox edge-aware: it opens above the trigger when lower viewport space is insufficient and remains scrollable within the available space.
- Keep the public submission cover-upload prompt on one line, truncating only the secondary format guidance when space is limited.
- Make actions state-aware: upcoming events can register, live events can join or watch, and past events only expose Watch recording when EMS provides recording media.
- Refresh static event-page actions from the live public API so media added after a website build appears without waiting for the next build.
- Keep the events page client script module-processed so List and Calendar controls plus live event refreshes initialize in the browser.
- Keep ended events without recordings non-actionable and preserve live card layout and panel visibility after dynamic refreshes.

Verification: pnpm build (27 pages built); inspected generated /events script bundle; git diff --check passed.
@Elvis020
Elvis020 merged commit 1487a25 into main Aug 11, 2026
5 checks passed
@Elvis020
Elvis020 deleted the feature/fix-dynamic-event-styles branch August 11, 2026 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants