fix(pres_mgmt): restore session view — name always visible, POC in hero card, email/copy links
- session_view.svelte: session name/code were only rendered in edit_mode — non-editors saw a blank card. Now always visible; edit_mode just wraps them in field editors. - Restructured hero card as a <ul> with datetime, room, and POC as rows inside the card. POC no longer floats below as a disconnected block. - Dynamic POC label (label__session_poc_name) used throughout: row label, modal titles, fallback text, and editor label — no more hardcoded "Host:". - POC "Select Person" flow: gate select editor on person_options_loaded to prevent empty dropdown on open; button reads "Reload Person" after list is loaded. - Restored email sign-in link button in POC row with idle/sending/sent/error feedback. Shown when require__session_agree && show__email_access_link && poc_person_primary_email. - Restored inline copy-access-link for trusted staff (show__copy_access_link). - session_page_menu.svelte: fix event_session_id prop — was passing event_id instead of event_session_id, breaking the Sign_in_out auth grant. - ae_comp__event_session_poc_profile.svelte: migrate run() to $effect, fix poc_person_id_random → poc_person_id, fix events_slct reference in copy link URL. - +page.svelte: add pres_mgmt config sync so session pages opened directly by URL get correct hide__session_poc and other remote config values. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -3,8 +3,60 @@
|
||||
> **Status:** Stable — ongoing development.
|
||||
> **Scope:** Active/open work only. Completed detail lives in archive files.
|
||||
|
||||
## 🔴 CMSC Charlotte — May 27 (Presentation Management)
|
||||
**Post-show hardening only**
|
||||
## 🔴 LCI October — Pres Mgmt Restoration (in progress 2026-06-12)
|
||||
|
||||
These features regressed over the last 6 months and must be working before the LCI conference.
|
||||
Reference commit for original working implementation: `bb993a102`.
|
||||
|
||||
### Session POC (Champion/Moderator) — `session_view.svelte`
|
||||
|
||||
**Root cause of visible bugs:** The POC section is placed *below* the session hero card as a
|
||||
separate disconnected block. In the original it was part of a structured `<ul>` with the session
|
||||
name, code, datetime, location, and description all together. The current layout looks and feels
|
||||
wrong to users.
|
||||
|
||||
- [x] **[Pres Mgmt] POC section — move inside session hero card** (2026-06-12)
|
||||
Restructured hero card as a `<ul>` with datetime, room, and POC as rows inside the card.
|
||||
Session name and code are now always visible (not just in edit_mode — that was a bug).
|
||||
|
||||
- [x] **[Pres Mgmt] POC assignment — "Select Person" flow broken** (2026-06-12)
|
||||
Gated the select editor on `person_options_loaded` (`Object.keys($slct.person_obj_kv).length > 0`).
|
||||
"Select Person" button renders as "Reload Person" after list is loaded.
|
||||
|
||||
- [x] **[Pres Mgmt] Email Session POC sign-in link — UI missing** (2026-06-12)
|
||||
Restored email button in POC row with `sending/sent/error` state feedback.
|
||||
Shown when `require__session_agree && show__email_access_link && poc_person_primary_email`.
|
||||
|
||||
- [x] **[Pres Mgmt] Copy Session POC access link — UI missing from session view** (2026-06-12)
|
||||
Restored inline `MyClipboard` copy button in POC row for trusted staff.
|
||||
Shown when `show__copy_access_link && trusted_access && poc_sign_in_url`.
|
||||
|
||||
### Presenter Sign-In
|
||||
|
||||
- [ ] **[Pres Mgmt] Presenter email sign-in link routes to wrong page**
|
||||
`email_sign_in__event_presenter()` builds a URL to `/presenter/[id]?person_id=...&person_pass=...`.
|
||||
The URL param parser (`sign_in_out.svelte`) is only mounted on the *session* page menu, not the
|
||||
presenter page. A presenter clicking their email link lands on their page with no auth granted.
|
||||
Fix: mount `Sign_in_out` in `presenter_page_menu.svelte` (same way session menu does it), or
|
||||
change the email link to route to the session page (which already has the parser) and include
|
||||
the presenter/presentation IDs as params — which is how it worked originally.
|
||||
|
||||
- [ ] **[Pres Mgmt] Presenter agreement not enforced before file upload**
|
||||
`require__presenter_agree` is stored and displayed but the upload components are gated on
|
||||
`auth__kv.presenter[id]` only, not on `presenter.agree`. A presenter who signs in but has not
|
||||
agreed can still upload. The original blocked the upload section until `agree === true`.
|
||||
|
||||
### Session POC Sign-In
|
||||
|
||||
- [ ] **[Pres Mgmt] `session_page_menu.svelte` sign-in prop still wrong**
|
||||
`event_session_id` prop passed to `Sign_in_out` was just changed from `event_id` to
|
||||
`event_session_id` — verify this is actually `$lq__event_session_obj?.event_session_id`
|
||||
(the real session ID string) not the URL param `url_session_id`. The sign-in component
|
||||
uses this value to set `auth__kv.session[event_session_id]`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
- [ ] **[Launcher/Electron] Wallpaper reliability (post-CMSC)**
|
||||
- [ ] Use timestamp/randomized temp filename so macOS always sees a new path.
|
||||
|
||||
Reference in New Issue
Block a user