Sha256: 2aa4e4a0d8c0bd9a651f86337fa5344c003449c07d3f6512929d9aa8feb2be7c

Contents?: true

Size: 470 Bytes

Versions: 10

Compression:

Stored size: 470 Bytes

Contents

# frozen_string_literal: true

module Maquina
  class Current < ActiveSupport::CurrentAttributes
    attribute :active_session, :user, :membership

    def signed_in?
      return false if active_session.blank?
      !active_session.expired? && !active_session.blocked?
    end

    def active_session=(value)
      super
      self.user = value&.user
      self.membership = user.default_membership
    end

    def management?
      user.management?
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
maquina-0.5.2 app/models/maquina/current.rb
maquina-0.5.1 app/models/maquina/current.rb
maquina-0.4.0 app/models/maquina/current.rb
maquina-0.3.0 app/models/maquina/current.rb
maquina-0.2.5 app/models/maquina/current.rb
maquina-0.2.4 app/models/maquina/current.rb
maquina-0.2.3 app/models/maquina/current.rb
maquina-0.2.2 app/models/maquina/current.rb
maquina-0.2.1 app/models/maquina/current.rb
maquina-0.2.0 app/models/maquina/current.rb