Open Bug 2061849 Opened 10 days ago Updated 4 days ago

Wrap the repeated five-step change of an attendee's participation status in one call

Categories

(Calendar :: General, task)

task

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: ndo84bw, Unassigned)

References

(Depends on 1 open bug)

Details

Six places under calendar/ change the participation status of an invited attendee with the same five steps: clone the item, remove the attendee, clone the attendee, set participationStatus, add it back.

  • calendar/base/modules/utils/calItipUtils.sys.mjs, found REQUEST:NEEDS-ACTION
    path (accepting an invitation that is already in the calendar)
  • calendar/base/modules/utils/calItipUtils.sys.mjs, UPDATE and UPDATE-MINOR
    path (keeping the status across an organizer update)
  • calendar/base/modules/utils/calItipUtils.sys.mjs, REPLY and COUNTER path
  • calendar/base/modules/utils/calItipUtils.sys.mjs, resolveUidCollision()
  • calendar/base/src/CalCachedCalendar.sys.mjs, applyPendingUidConflicts()
  • calendar/providers/caldav/CalDavCalendar.sys.mjs, processItipReply()

Suggested by Geoff in the review of D309500, which added the fourth and fifth of them: a setAttendeeParticipationStatus function on the interface.

A helper taking the item, the attendee and the new status and returning the changed item would leave the callers only what actually differs between them, the listener and the modifyItem() that follows.

Depends on: 1717401
You need to log in before you can comment on or make changes to this bug.