Sign in before continuing.
Guest Access: Restructure Meeting Form to Increase Usability
Overview & Context
Apply the same guest-access / waiting-room UI restructure to the Outlook add-in's EventComposePage. Replace the standalone "Waiting room" switch + "Guest access" toggle group with a top-level Guest access switch and a Waiting room toggle group (Inactive / For all participants / For guests only). The underlying state (waitingRoomEnabled: boolean, guestAccess: GuestAccess) and the API payload sent by EventService stay unchanged.
Technical Design & Interfaces
Mapping table (UI → API):
| Waiting room (UI) | Guest access (UI) | waitingRoom |
guestAccess |
|---|---|---|---|
| Inactive | off | false |
Disabled |
| Inactive | on | false |
DirectAccess |
| For all | off | true |
Disabled |
| For all | on | true |
WaitingRoom |
| For guests only | on | false |
WaitingRoom |
| For guests only | off | n/a - toggle option disabled |
Frontend & UI Requirements
Translations (dashboard namespace)
| Key | English | German |
|---|---|---|
waiting-room-switch (reused as toggle group label) |
Waiting room | Warteraum |
guest-access-switch (reused as switch label) |
Guest access | Gastzugang |
waiting-room-option-disabled |
Inactive | Inaktiv |
waiting-room-option-all-participants |
For all participants | Für alle Teilnehmer |
waiting-room-option-guests-only |
For guests only | Nur für Gäste |
Implementation Notes
- Keep the API contract untouched — only the UI layer changes.
- "Guests-only" without guest access is structurally impossible.
- Waiting-room control must remain available under E2EE — only hide the guest-access switch and disable "guests-only".
Implementation Tasks
- Add
guestAccessMapping.tswithderiveUiState/computeFormValuesmirroring the web-app helper. - Refactor the relevant
EventComposePageblock to render the Guest access switch + Waiting room toggle group driven by the mapping helpers. - Add the three new translation keys in
en/dashboard.jsonandde/dashboard.json.
Definition of Done (DoD)
- No regressions to the create/update payload sent by
EventService— saved events round-trip identically for all UI states. - Manual verification in Outlook desktop and Outlook web (EN + DE).
- Waiting room can be toggled on E2EE meetings; guest access stays forced off there.