Sha256: e90cd09e68aa289b060b1cbcf5d1506b135b4355246388d1d32802cd63dbafeb

Contents?: true

Size: 610 Bytes

Versions: 5

Compression:

Stored size: 610 Bytes

Contents

module InfinumId
  module Users
    class Invite
      def initialize(user_params, current_user)
        @user_params = user_params
        @current_user = current_user
      end

      def self.call(user_params, current_user)
        new(user_params, current_user).call
      end

      def call
        @user = User.create(@user_params)

        send_invite_request if @user.errors.empty?
        @user
      end

      private

      attr_reader :current_user, :user

      def send_invite_request
        InfinumId::Users::InviteWorker.perform_async(@user.id, current_user.uid)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
infinum_id-1.3.1 app/services/infinum_id/users/invite.rb
infinum_id-1.3.0 app/services/infinum_id/users/invite.rb
infinum_id-1.2.0 app/services/infinum_id/users/invite.rb
infinum_id-1.1.0 app/services/infinum_id/users/invite.rb
infinum_id-1.0.0 app/services/infinum_id/users/invite.rb