Sha256: 26e7f99669069dbdb976f2531ecbef35a406f8e998fa64c478fde2d68475e617

Contents?: true

Size: 662 Bytes

Versions: 29

Compression:

Stored size: 662 Bytes

Contents

# frozen_string_literal: true
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

29 entries across 29 versions & 1 rubygems

Version Path
hyrax-5.1.0.pre.beta1 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.4 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.3 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.2 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.1 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.0 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.0.rc3 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.0.rc2 app/channels/hyrax/application_cable/connection.rb
hyrax-5.0.0.rc1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.6.0 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0.rc3 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0.rc2 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0.rc1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.5.0 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0.beta2 app/channels/hyrax/application_cable/connection.rb
hyrax-3.4.2 app/channels/hyrax/application_cable/connection.rb
hyrax-4.0.0.beta1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.4.1 app/channels/hyrax/application_cable/connection.rb
hyrax-3.4.0 app/channels/hyrax/application_cable/connection.rb