Class: MnoEnterprise::Jpi::V1::Admin::InvitesController

Inherits:
BaseResourceController
  • Object
show all
Defined in:
app/controllers/mno_enterprise/jpi/v1/admin/invites_controller.rb

Overview

Manage invitation sending

Instance Method Summary collapse

Instance Method Details

#createObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/controllers/mno_enterprise/jpi/v1/admin/invites_controller.rb', line 4

def create
  @organization = MnoEnterprise::Organization.find(params[:organization_id])
  user = MnoEnterprise::User.find(params[:user_id])
  return render json: {error: 'Could not find account or user'}, status: :not_found unless @organization && user

  if user.confirmation_required?
    user.resend_confirmation_instructions
  else
    invite = find_org_invite(@organization, user)
    return render json: {error: 'No active invitation found'}, status: :not_found unless invite
    send_org_invite(invite)
  end

  MnoEnterprise::EventLogger.info('user_invite', current_user.id, 'User invited', {user_email: user.email, account_name: @organization.name}, user)

  @user = user.confirmed? ? invite : user.reload

  render 'mno_enterprise/jpi/v1/admin/organizations/invite_member'
end