[feat] Allow embedding user-defined logo and user-defined text in email template
This commit is contained in:
parent
a45008640f
commit
55f56495f4
3 changed files with 165 additions and 70 deletions
|
|
@ -1,17 +1,19 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
SNAPCON_BCC_ADDRESS = 'messages@snap.berkeley.edu'
|
||||
EMAIL_TEMPLATE = 'email_template'
|
||||
YTLF_TICKET_ID = 50
|
||||
|
||||
class Mailbot < ActionMailer::Base
|
||||
def registration_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
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))
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.registration_body)
|
||||
@logo = conference.picture.thumb.url
|
||||
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.registration_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def ticket_confirmation_mail(ticket_purchase)
|
||||
|
|
@ -39,108 +41,128 @@ class Mailbot < ActionMailer::Base
|
|||
def acceptance_mail(event)
|
||||
conference = event.program.conference
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.accepted_subject,
|
||||
body: conference.email_settings.generate_event_mail(event, conference.email_settings.accepted_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_event_mail(event, conference.email_settings.accepted_body)
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.accepted_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def submitted_proposal_mail(event)
|
||||
conference = event.program.conference
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.submitted_proposal_subject,
|
||||
body: conference.email_settings.generate_event_mail(event, conference.email_settings.submitted_proposal_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_event_mail(event, conference.email_settings.submitted_proposal_body)
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.submitted_proposal_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def rejection_mail(event)
|
||||
conference = event.program.conference
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.rejected_subject,
|
||||
body: conference.email_settings.generate_event_mail(event, conference.email_settings.rejected_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_event_mail(event, conference.email_settings.rejected_body)
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.rejected_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def confirm_reminder_mail(event)
|
||||
conference = event.program.conference
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
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))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_event_mail(event, conference.email_settings.confirmed_without_registration_body)
|
||||
|
||||
mail(to: event.submitter.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.confirmed_without_registration_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_date_update_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.conference_dates_updated_subject,
|
||||
body: conference.email_settings.generate_email_on_conf_updates(conference,
|
||||
user,
|
||||
conference.email_settings.conference_dates_updated_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.conference_dates_updated_body)
|
||||
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.conference_dates_updated_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_registration_date_update_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.conference_registration_dates_updated_subject,
|
||||
body: conference.email_settings.generate_email_on_conf_updates(conference,
|
||||
user,
|
||||
conference.email_settings.conference_registration_dates_updated_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.conference_registration_dates_updated_body)
|
||||
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.conference_registration_dates_updated_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_venue_update_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.venue_updated_subject,
|
||||
body: conference.email_settings.generate_email_on_conf_updates(conference,
|
||||
user,
|
||||
conference.email_settings.venue_updated_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.venue_updated_body)
|
||||
|
||||
mail(to: user.email,
|
||||
bcc: SNAPCON_BCC_ADDRESS,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.venue_updated_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_schedule_update_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.program_schedule_public_subject,
|
||||
body: conference.email_settings.generate_email_on_conf_updates(conference,
|
||||
user,
|
||||
conference.email_settings.program_schedule_public_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.program_schedule_public_body)
|
||||
|
||||
mail(to: user.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.program_schedule_public_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_cfp_update_mail(conference, user)
|
||||
mail(to: user.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.cfp_dates_updated_subject,
|
||||
body: conference.email_settings.generate_email_on_conf_updates(conference,
|
||||
user,
|
||||
conference.email_settings.cfp_dates_updated_body))
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_email_on_conf_updates(conference, user, conference.email_settings.cfp_dates_updated_body)
|
||||
|
||||
mail(to: user.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.cfp_dates_updated_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_booths_acceptance_mail(booth)
|
||||
conference = booth.conference
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_booth_mail(booth, conference.email_settings.booths_acceptance_body)
|
||||
|
||||
mail(to: booth.submitter.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.booths_acceptance_subject,
|
||||
body: conference.email_settings.generate_booth_mail(booth, conference.email_settings.booths_acceptance_body))
|
||||
mail(to: booth.submitter.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.booths_acceptance_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def conference_booths_rejection_mail(booth)
|
||||
conference = booth.conference
|
||||
@logo = conference.picture.thumb.url
|
||||
@email_body = conference.email_settings.generate_booth_mail(booth, conference.email_settings.booths_rejection_body)
|
||||
|
||||
mail(to: booth.submitter.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.booths_rejection_subject,
|
||||
body: conference.email_settings.generate_booth_mail(booth, conference.email_settings.booths_rejection_body))
|
||||
mail(to: booth.submitter.email,
|
||||
from: conference.contact.email,
|
||||
subject: conference.email_settings.booths_rejection_subject,
|
||||
template_name: EMAIL_TEMPLATE)
|
||||
end
|
||||
|
||||
def event_comment_mail(comment, user)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue