class Commands::Groups::Invitation::Create
Public Instance Methods
execute()
click to toggle source
# File lib/restpack_group_service/commands/invitation/create.rb, line 20 def execute invitations = Models::Groups::Invitation.create!(inputs[:invitations]) send_email(invitations) Serializers::Groups::Invitation.serialize(invitations) end
Private Instance Methods
send_email(invitations)
click to toggle source
# File lib/restpack_group_service/commands/invitation/create.rb, line 28 def send_email(invitations) invitations.each do |invitation| if invitation.email rsvp_url = invitation.configuration.data['rsvp_url'] Messaging::Email::Send.run!({ application_id: invitation.application_id, template: 'group.invitation', to: invitation.email, data: { inviter_name: invitation.inviter_name, access_key: invitation.access_key, group_name: invitation.group.name, accept_url: "#{rsvp_url}?access_key=#{invitation.access_key}", reject_url: "#{rsvp_url}?access_key=#{invitation.access_key}&accept=false" } }) end end end