Get rid of build_email

It's always easy to add another layer of indirection...
This commit is contained in:
Henne Vogelsang 2016-04-21 16:36:53 +02:00
parent a698ce44fe
commit 37e0b5f5b8

View file

@ -1,38 +1,41 @@
class Mailbot < ActionMailer::Base
default from: 'no-reply@example.com'
def registration_mail(conference, person)
build_email(conference,
person.email,
conference.email_settings.registration_subject,
conference.email_settings.generate_email_on_conf_updates(conference, person, conference.email_settings.registration_body))
def registration_mail(conference, user)
mail(to: user.email,
from: conference.contact.email,
subject: conference.email_settings.registration_subject,
body: conference.email_settings.generate_email_on_conf_updates(conference,
user,
conference.email_settings.registration_body))
end
def acceptance_mail(event)
conference = event.program.conference
person = event.submitter
build_email(conference,
person.email,
conference.email_settings.accepted_subject,
conference.email_settings.generate_event_mail(event, conference.email_settings.accepted_body))
mail(to: event.submitter.email,
from: conference.contact.email,
subject: conference.email_settings.accepted_subject,
body: conference.email_settings.generate_event_mail(event, conference.email_settings.accepted_body))
end
def rejection_mail(event)
conference = event.program.conference
person = event.submitter
build_email(conference,
person.email,
conference.email_settings.rejected_subject,
conference.email_settings.generate_event_mail(event, conference.email_settings.rejected_body))
mail(to: event.submitter.email,
from: conference.contact.email,
subject: conference.email_settings.rejected_subject,
body: conference.email_settings.generate_event_mail(event, conference.email_settings.rejected_body))
end
def confirm_reminder_mail(event)
conference = event.program.conference
person = event.submitter
build_email(conference,
person.email,
conference.email_settings.confirmed_without_registration_subject,
conference.email_settings.generate_event_mail(event, conference.email_settings.confirmed_without_registration_body))
mail(to: event.submitter.email,
from: conference.contact.email,
subject: conference.email_settings.confirmed_without_registration_subject,
body: conference.email_settings.generate_event_mail(event,
conference.email_settings.confirmed_without_registration_body))
end
def conference_date_update_mail(conference, user)
@ -95,13 +98,4 @@ class Mailbot < ActionMailer::Base
subject: "New comment has been posted for #{@event.title}")
end
end
def build_email(conference, to, subject, body)
logger.debug "Sending mail about #{subject} to #{to}"
mail(to: to,
from: conference.contact.email,
reply_to: conference.contact.email,
subject: subject,
body: body)
end
end