class ProjectMailer < ApplicationMailer layout 'project_mailer' layout false, only: :send_project_invitation def helper_join_request(builders, helper) subject = I18n.t('project_join_request', project: helper.project.title) @project_helper = helper @project = helper.project builders.each do |b| @user = b.user deliver_mail(@user.email, subject, reply_to = nil) end end def notify_helper_for_join_request(helper) return if helper.builder? subject = I18n.t('project_join_request_response', project: helper.project.title) @user = helper.user @project = helper.project @status = helper.status.titlecase deliver_mail(@user.email, subject, reply_to = nil) end def ask_request_to_helpers(helper, ask) @user = helper.user @project_helper = helper @ask = ask subject = I18n.t('ask_request_to_helpers', project: helper.project.title) @project = helper.project deliver_mail(helper.user.email, subject, reply_to = nil) end def notify_builder_ask_status(ask, status, project_helper) @builder = ask.project_helper.user @ask = ask @status = status @project_helper = project_helper @project = ask.project subject = I18n.t('ask_status_to_builder_subject', project: @project.title, ask: ask.title, status: status) deliver_mail(@builder.email, subject, reply_to = nil) end def notify_helper_ask_status(ask, status, project_helper) # @builder = ask.project_helper.user # @ask = ask # @status = status # @project_helper = project_helper # @project = ask.project # subject = I18n.t('ask_status_to_builder_subject', project: @project.title, ask: ask.title, status: status) # deliver_mail(project_helper.user.email, subject, reply_to = nil) end def notify_announcement(project_helper, announcement) @user = project_helper.user @announcement = announcement @project = project_helper.project subject = I18n.t('announcement_notification', project: announcement.project.title) deliver_mail(project_helper.user.email, subject, reply_to = nil) end def notify_monthly_announcement(project) emails = project.project_builders.map {|pb| pb.user.email } subject = I18n.t('monthly_announcement_check', project: project.title) @project = project deliver_mail(emails.join(','), subject, reply_to = nil) end def send_project_invitation(email, project) @project = project subject = I18n.t('project_invitation_subject', project: project.title, builder_name: project.user.first_name) deliver_mail(email, subject, reply_to = nil) end end