Skip to content

Commit 195a634

Browse files
committed
add function to get name of user and pass the name into the email model
1 parent fce56de commit 195a634

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

lib/code_corps/emails/receipt_email.ex

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,15 @@ defmodule CodeCorps.Emails.ReceiptEmail do
33
import Bamboo.PostmarkHelper
44

55
alias CodeCorps.Emails.BaseEmail
6-
alias CodeCorps.{DonationGoal, Project, Repo, StripeConnectCharge, StripeConnectSubscription, WebClient}
6+
alias CodeCorps.{DonationGoal, Project, Repo, StripeConnectCharge, StripeConnectSubscription, WebClient, User}
77

8-
@spec create(StripeConnectCharge.t, Stripe.Invoice.t) :: Bamboo.Email.t
8+
@spec get_name(User.t) :: String.t
9+
def get_name(%User{ first_name: nil }), do: "there"
10+
11+
@spec get_name(User.t) :: String.t
12+
def get_name(%User{ first_name: name}), do: name
13+
14+
@spec create(StripeConnectCharge.t, Stripe.Invoice.t) :: Bamboo.Email.t
915
def create(%StripeConnectCharge{} = charge, %Stripe.Invoice{} = invoice) do
1016
with %StripeConnectCharge{} = charge <- Repo.preload(charge, :user),
1117
%Project{} = project <- get_project(invoice.subscription),
@@ -55,7 +61,7 @@ defmodule CodeCorps.Emails.ReceiptEmail do
5561
project_title: project.title,
5662
project_url: project |> url(),
5763
subject: project |> build_subject_line(),
58-
user_first_name: charge.user.first_name
64+
name: get_name(charge.user)
5965
}
6066
end
6167

0 commit comments

Comments
 (0)