Move mailer from Bamboo to Swoosh

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2022-04-05 12:16:22 +02:00
parent 2e1c284565
commit e841fb6fbb
36 changed files with 403 additions and 552 deletions

View File

@@ -2,9 +2,8 @@ defmodule Mobilizon.Web.Email.Member do
@moduledoc """
Handles emails sent about group members.
"""
use Bamboo.Phoenix, view: Mobilizon.Web.EmailView
use Phoenix.Swoosh, view: Mobilizon.Web.EmailView
import Bamboo.Phoenix
import Mobilizon.Web.Gettext
alias Mobilizon.{Actors, Users}
@@ -34,13 +33,15 @@ defmodule Mobilizon.Web.Email.Member do
group: group.name
)
Email.base_email(to: email, subject: subject)
|> assign(:locale, locale)
|> assign(:inviter, inviter)
|> assign(:group, group)
|> assign(:subject, subject)
|> render(:group_invite)
|> Email.Mailer.send_email_later()
[to: email, subject: subject]
|> Email.base_email()
|> render_body(:group_invite, %{
locale: locale,
inviter: inviter,
group: group,
subject: subject
})
|> Email.Mailer.send_email()
:ok
end
@@ -62,12 +63,10 @@ defmodule Mobilizon.Web.Email.Member do
group: Actor.display_name(group)
)
Email.base_email(to: email, subject: subject)
|> assign(:locale, locale)
|> assign(:group, group)
|> assign(:subject, subject)
|> render(:group_membership_approval)
|> Email.Mailer.send_email_later()
[to: email, subject: subject]
|> Email.base_email()
|> render_body(:group_membership_approval, %{locale: locale, group: group, subject: subject})
|> Email.Mailer.send_email()
:ok
end
@@ -91,12 +90,14 @@ defmodule Mobilizon.Web.Email.Member do
group: Actor.display_name(group)
)
Email.base_email(to: email, subject: subject)
|> assign(:locale, locale)
|> assign(:group, group)
|> assign(:subject, subject)
|> render(:group_membership_rejection)
|> Email.Mailer.send_email_later()
[to: email, subject: subject]
|> Email.base_email()
|> render_body(:group_membership_rejection, %{
locale: locale,
group: group,
subject: subject
})
|> Email.Mailer.send_email()
:ok
end
@@ -115,12 +116,10 @@ defmodule Mobilizon.Web.Email.Member do
group: Actor.display_name(group)
)
Email.base_email(to: email, subject: subject)
|> assign(:locale, locale)
|> assign(:group, group)
|> assign(:subject, subject)
|> render(:group_member_removal)
|> Email.Mailer.send_email_later()
[to: email, subject: subject]
|> Email.base_email()
|> render_body(:group_member_removal, %{locale: locale, group: group, subject: subject})
|> Email.Mailer.send_email()
:ok
end