Add interactor ProcessNewMembershipApplication
This commit is contained in:
parent
307e52d442
commit
7e9b31a406
4 changed files with 20 additions and 6 deletions
|
@ -26,6 +26,10 @@ class MembershipApplicationsController < ApplicationController
|
||||||
|
|
||||||
return render :new unless @membership_application.save
|
return render :new unless @membership_application.save
|
||||||
|
|
||||||
|
ProcessNewMembershipApplication.call(
|
||||||
|
membership_application: @membership_application,
|
||||||
|
)
|
||||||
|
|
||||||
remember_if_guest_account @membership_application.account
|
remember_if_guest_account @membership_application.account
|
||||||
|
|
||||||
redirect_to @membership_application
|
redirect_to @membership_application
|
||||||
|
|
9
app/interactors/process_new_membership_application.rb
Normal file
9
app/interactors/process_new_membership_application.rb
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class ProcessNewMembershipApplication
|
||||||
|
include Interactor
|
||||||
|
|
||||||
|
def call
|
||||||
|
MembershipApplicationMailer.with(context).tracking.deliver_now
|
||||||
|
end
|
||||||
|
end
|
|
@ -20,10 +20,4 @@ class MembershipApplication < ApplicationRecord
|
||||||
self.organization_membership = nil if organization_membership.blank?
|
self.organization_membership = nil if organization_membership.blank?
|
||||||
self.comment = nil if comment.blank?
|
self.comment = nil if comment.blank?
|
||||||
end
|
end
|
||||||
|
|
||||||
after_create do
|
|
||||||
MembershipApplicationMailer.with(
|
|
||||||
membership_application: self,
|
|
||||||
).tracking.deliver_now
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe ProcessNewMembershipApplication do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
Reference in a new issue