about summary refs log tree commit diff
path: root/app/channels/application_cable/connection.rb
blob: 33f9aa429765136ca1adb6714f96adf7460ce99b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# frozen_string_literal: true

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

    def connect
      self.current_user = find_verified_user
    end

    protected

    def find_verified_user
      catch :warden do
        verified_user = env['warden'].user
        return verified_user if verified_user
      end

      reject_unauthorized_connection
    end
  end
end