fix(pres_mgmt): presenter QR follows session QR global-default pattern

show__presenter_qr (admin) is meant to be the global default for everyone,
signed in or not. show_content__presenter_qr is a trusted-staff-only local
override for when the admin hasn't enabled it globally. Presenter QR was
still on the old logic requiring show_content__presenter_qr to also be
true even when the admin enabled it for everyone — non-trusted users
(presenters) have no way to set that flag, so QR never appeared for them.

- presenter_view.svelte: generation effect + display block now use
  show__presenter_qr || (trusted_access && show_content__presenter_qr),
  matching the session_view.svelte fix from earlier today
- presenter_page_menu.svelte: QR toggle was gated to administrator_access,
  hiding it from plain Trusted onsite staff; loosened to trusted_access
  and dropped the redundant `|| trusted_access` (now only shown when
  admin hasn't already enabled QR globally)
- ae_comp__events_menu_opts.svelte: both session and presenter QR toggles
  were visible to all authenticated_access users whenever admin had
  enabled QR globally, even though the toggle had no effect for them;
  now gated to trusted_access && !show__*_qr, matching session_page_menu.svelte
- Log the fix in PROJECT__AE_Events_PressMgmt_Config_Cleanup.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Scott Idem
2026-06-16 12:14:24 -04:00
parent 2e4547f433
commit a37866e5bb
4 changed files with 36 additions and 7 deletions

View File

@@ -233,6 +233,20 @@ Safe and backward compatible — old DB records fall through to `?? false` defau
Column" toggle buttons in `ae_comp__events_menu_opts.svelte` and `event_page_menu.svelte`
were removed — the field is lock-synced from the per-event Config page now, same as the
other session field visibility toggles.
- [x] **Presenter QR matched to session QR pattern (2026-06-16)**`show__session_qr` /
`show__presenter_qr` are the admin-set **global default for everyone**, signed in or not.
`show_content__*_qr` is a **trusted-staff-only local override**, used when the admin has
NOT enabled QR globally. The session QR side already worked this way (fixed earlier today);
presenter QR was still on the old buggy logic requiring `show_content__presenter_qr` to be
true even when the admin had enabled it for everyone, which non-trusted users (presenters)
have no way to set. Fixed `presenter_view.svelte` (generation effect + display block) to
`show__presenter_qr || (trusted_access && show_content__presenter_qr)`. Also corrected two
toggle-button visibility bugs found along the way: `ae_comp__events_menu_opts.svelte` was
showing the QR toggle to all `authenticated_access` users (not just trusted) whenever the
admin had enabled QR globally, even though the toggle had no effect for them; and
`presenter_page_menu.svelte`'s QR toggle was gated to `administrator_access`, hiding it from
plain Trusted onsite staff entirely. Both now use the canonical pattern from
`session_page_menu.svelte`: `trusted_access && !show__*_qr`.
### Step 6 scope (mechanical find-replace)