mirror of
https://github.com/bulwarkmail/webmail.git
synced 2026-10-31 16:13:15 +00:00
Three bugs when viewing an event's participants (#738): 1. Phantom participant. Stalwart can emit the organizer both as the ORGANIZER-derived participant and as an ATTENDEE line, so the same address rendered twice — "4 participants" for three people. getParticipantList() now folds same-address entries into the first-seen one (real RSVP beats needs-action on merge), and getParticipantCount() counts addresses so event-card and agenda badges agree. 2. Bare email for a known contact. The organizer's display name is dropped on Stalwart's iCalendar round-trip, so the organizer rendered as a bare address despite having a contact card with a 备注 name. New useContactNameResolver() hook fills missing participant names from the contact store (fill-only — event data stays authoritative), threaded through the panel, the hover popover, the RSVP view, and the organizer name written on save. 3. Organizer status. The organizer with no explicit status read as 待处理; they owe no reply, so they now display as accepted, and the panel's status badge no longer repeats the organizer label the (组织者) suffix already carries. Co-Authored-By: Claude <noreply@anthropic.com>