cannery/lib/cannery/accounts/email_worker.ex

14 lines
389 B
Elixir
Raw Normal View History

2022-02-08 19:59:23 -05:00
defmodule Cannery.EmailWorker do
2022-02-08 22:12:22 -05:00
@moduledoc """
Oban worker that dispatches emails
"""
2022-02-08 19:59:23 -05:00
use Oban.Worker, queue: :mailers
2022-02-11 22:37:41 -05:00
alias Cannery.{Accounts, Mailer, Email}
2022-02-08 19:59:23 -05:00
@impl Oban.Worker
2022-02-11 22:37:41 -05:00
def perform(%Oban.Job{args: %{"email" => email, "user_id" => user_id, "attrs" => attrs}}) do
Email.generate_email(email, user_id |> Accounts.get_user!(), attrs) |> Mailer.deliver()
2022-02-08 19:59:23 -05:00
end
end