class Commands::Groups::Invitation::Rsvp

Public Instance Methods

execute() click to toggle source
# File lib/restpack_group_service/commands/invitation/rsvp.rb, line 10
def execute
  invitation = Models::Groups::Invitation.find_by({
    application_id: inputs[:application_id],
    access_key: inputs[:access_key]
  })

  if invitation
    if inputs[:accept]
      membership = invitation.accept(inputs[:user_id])
    else
      invitation.reject(inputs[:user_id])
    end

    Serializers::Groups::Invitation.serialize(invitation)
  else
    status :not_found unless invitation
  end
end