Class: Firebug::Session

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
lib/firebug/session.rb

Overview

An ActiveRecord model of the CodeIgniter sessions table.

Instance Method Summary collapse

Instance Method Details

Returns:

  • (String)


29
30
31
32
# File 'lib/firebug/session.rb', line 29

def cookie_data
  data = { session_id: session_id, ip_address: ip_address, user_agent: user_agent, last_activity: last_activity }
  Firebug.encrypt_cookie(data)
end

#user_agent=(value) ⇒ Object

Parameters:

  • value (String)


22
23
24
25
26
# File 'lib/firebug/session.rb', line 22

def user_agent=(value)
  # Pyro seems to truncate the value and since it also uses this value when finding the session, it's important
  # we do the same.
  super(Firebug.config.truncate_user_agent ? value&.slice(0...120) : value)
end

#user_dataHash, Array

Returns:

  • (Hash, Array)


11
12
13
# File 'lib/firebug/session.rb', line 11

def user_data
  Firebug.unserialize(super || '')
end

#user_data=(value) ⇒ Object

Parameters:

  • value (Hash)


16
17
18
19
# File 'lib/firebug/session.rb', line 16

def user_data=(value)
  value.transform_values! { |v| v.respond_to?(:public_id) ? v.public_id : v }
  super(Firebug.serialize(value))
end