Page MenuHomePhabricator

Enable Mail-Templating and -Sending from Fundraising Operation Center
Open, Needs TriagePublic

Description

Currently, when someone moderates a donation in the Fundraising Operation Center, the web UI calls the route donation-was-aproved in the Fundraising Application, which triggers the confirmation mail (which is highly specific to the donation data, so we can't just send a fixed text template). To avoid this overcomplicated setup, we should send generate the email directly from the FOC

Background History of this setup
We did this setup to avoid introducing email infrastructure to the Fundraising Operation Center that largely duplicates code from the FundraisingFrontend. At the time, we did not have a content repository.
When we wrote the content repository, we decided that it should not contain any logic.

T147325: There is no email confirmation when a donation was moderated contains the detailed discussion history of the current setup.

Affected repositories

  • fundraising-application
  • fundraising-frontend-content
  • fundraising-backend
  • fundraising-donations

Implementation Details/Subtickets

  • Copy all mail templates from app/mail_templates to the fundraising-frontend-content repository. They should be langage-independent for now, so don't put them in the language-specific folders
  • Adapt the Fundraising Application code to use the mail templates from the new location
  • Look at the mailer + templating code for generating the confirmation mail in the Fundraising Application and copy it to the Fundraising Operation Center. Change the setup in ApplicationFactory::getDonationNotifier
  • Delete HttpDonationNotifier and DonationAcceptedEventHandler (and all related dependencies and tests) from the donation bounded context. This is a BC break.