Sha256: 20e50605c0f2438cd1cde45edc4dbfff0db9906f40209721614a43c26e040c44

Contents?: true

Size: 732 Bytes

Versions: 5

Compression:

Stored size: 732 Bytes

Contents

# frozen_string_literal: true

module Bpluser
  module OmniauthCallbacks
    extend ActiveSupport::Concern

    included do
      include InstanceMethods

      skip_before_action :verify_authenticity_token, only: [:polaris, :failure]
    end

    module InstanceMethods
      def polaris
        @user = User.find_for_polaris_oauth(request.env['omniauth.auth'])

        if @user.persisted?
          sign_in_and_redirect @user, event: :authentication
          set_flash_message(:notice, :success, kind: 'Polaris') if is_navigational_format?
        else
          session['devise.polaris_data'] = request.env['omniauth.auth'].except(:extra)
          redirect_to new_user_registration_url
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
bpluser-0.5.0 app/controllers/concerns/bpluser/omniauth_callbacks.rb
bpluser-0.4.0 app/controllers/concerns/bpluser/omniauth_callbacks.rb
bpluser-0.3.0 app/controllers/concerns/bpluser/omniauth_callbacks.rb
bpluser-0.2.0.4 app/controllers/concerns/bpluser/omniauth_callbacks.rb
bpluser-0.2.0.3 app/controllers/concerns/bpluser/omniauth_callbacks.rb