Sha256: 645c55c7efbe1cc513c41d947a3fb3a0e545917ba9db66a5d17c5e82d6e5c2c5

Contents?: true

Size: 1.96 KB

Versions: 24

Compression:

Stored size: 1.96 KB

Contents

module MnoEnterprise::Concerns::Controllers::OrgInvitesController
  extend ActiveSupport::Concern

  #==================================================================
  # Included methods
  #==================================================================
  # 'included do' causes the included code to be evaluated in the
  # context where it is included rather than being executed in the module's context
  included do
    before_filter :authenticate_user!
  end

  #==================================================================
  # Class methods
  #==================================================================
  module ClassMethods
    # def some_class_method
    #   'some text'
    # end
  end

  #==================================================================
  # Instance methods
  #==================================================================
  # GET /org_invites/1?token=HJuiofjpa45A73255a74F534FDfds
  def show
    @current_user = current_user
    @org_invite = MnoEnterprise::OrgInvite.active.where(id: params[:id], token: params[:token]).first
    redirect_path = mnoe_home_path

    if @org_invite && !@org_invite.expired? && @org_invite.accept!(current_user)
      redirect_path = add_param_to_fragment(redirect_path.to_s, 'dhbRefId', @org_invite.organization.id)
      message = { notice: "You are now part of #{@org_invite.organization.name}" }
      yield(:success, @org_invite) if block_given?
    elsif @org_invite && @org_invite.expired?
      message = { alert: "It looks like this invite has expired. Please ask your company administrator to resend the invite." }
    else
      message = { alert: "Unfortunately, this invite does not seem to be valid." }
    end

    # Add flash msg in url fragment for the new frontend
    type, msg = message.first
    type = (type == :alert ? :error : :success)
    redirect_path = add_param_to_fragment(redirect_path.to_s, 'flash', [{msg: msg,  type: type}.to_json])

    redirect_to redirect_path, message
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
mno-enterprise-api-3.4.0 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.3.3 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.3.2 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.2.1 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.3.1 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.3.0 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.2.0 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.1.4 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.0.7 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-2.0.9 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.1.3 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.0.6 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-2.0.8 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.1.2 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.0.5 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-2.0.7 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-2.0.6 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-2.0.5 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.1.1 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb
mno-enterprise-api-3.0.4 lib/mno_enterprise/concerns/controllers/org_invites_controller.rb