Sha256: 5388f19ddeae24f26936600f4cb75270fc8af5b16374389828fb154b2e31b054

Contents?: true

Size: 664 Bytes

Versions: 46

Compression:

Stored size: 664 Bytes

Contents

module Hyrax
  module ApplicationCable
    class Connection < ActionCable::Connection::Base
      identified_by :current_user

      def connect
        self.current_user = find_verified_user
      end

      private

        def find_verified_user
          user = ::User.find_by(id: user_id)
          if user
            user
          else
            reject_unauthorized_connection
          end
        end

        def user_id
          session['warden.user.user.key'][0][0]
        rescue NoMethodError
          nil
        end

        def session
          cookies.encrypted[Rails.application.config.session_options[:key]]
        end
    end
  end
end

Version data entries

46 entries across 46 versions & 1 rubygems

Version Path
hyrax-2.9.6 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.5 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.4 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.3 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.2 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.1 app/channels/hyrax/application_cable/connection.rb
hyrax-2.9.0 app/channels/hyrax/application_cable/connection.rb
hyrax-2.8.0 app/channels/hyrax/application_cable/connection.rb
hyrax-2.7.2 app/channels/hyrax/application_cable/connection.rb
hyrax-2.7.1 app/channels/hyrax/application_cable/connection.rb
hyrax-2.7.0 app/channels/hyrax/application_cable/connection.rb
hyrax-2.6.0 app/channels/hyrax/application_cable/connection.rb
hyrax-3.0.0.pre.rc1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.0.0.pre.beta3 app/channels/hyrax/application_cable/connection.rb
hyrax-2.5.1 app/channels/hyrax/application_cable/connection.rb
hyrax-2.5.0 app/channels/hyrax/application_cable/connection.rb
hyrax-3.0.0.pre.beta2 app/channels/hyrax/application_cable/connection.rb
hyrax-2.4.1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.0.0.pre.beta1 app/channels/hyrax/application_cable/connection.rb
hyrax-2.4.0 app/channels/hyrax/application_cable/connection.rb