Files
2025-12-10 09:23:52 +01:00

29 lines
561 B
Ruby

class Current < ActiveSupport::CurrentAttributes
attribute :session, :user, :identity, :account
attribute :http_method, :request_id, :user_agent, :ip_address, :referrer
def session=(value)
super(value)
if value.present?
self.identity = session.identity
end
end
def identity=(identity)
super(identity)
if identity.present?
self.user = identity.users.find_by(account: account)
end
end
def with_account(value, &)
with(account: value, &)
end
def without_account(&)
with(account: nil, &)
end
end