module ReTrack::SessionData

Constants

ATTRIBUTES

Public Instance Methods

to_hash(request) click to toggle source
# File lib/re_track/session_data.rb, line 8
def to_hash(request)
  @request = request
  Hash[ATTRIBUTES.map { |k, v| [k, send(k)] }]
end

Private Instance Methods

accept_language() click to toggle source
# File lib/re_track/session_data.rb, line 35
def accept_language
  @request.env['HTTP_ACCEPT_LANGUAGE']
end
first_url() click to toggle source
# File lib/re_track/session_data.rb, line 19
def first_url
  @request.url
end
first_visited_at() click to toggle source
# File lib/re_track/session_data.rb, line 27
def first_visited_at
  Time.now
end
forwarded_ip() click to toggle source
# File lib/re_track/session_data.rb, line 39
def forwarded_ip
  # we don't need this information anymore
  nil
end
ip() click to toggle source
# File lib/re_track/session_data.rb, line 31
def ip
  Digest::SHA256.hexdigest(@request.remote_ip + ip_secret)
end
ip_secret() click to toggle source
# File lib/re_track/session_data.rb, line 44
def ip_secret
  ENV['ENCRYPT_IP_SECRET'] || ''
end
referer_url() click to toggle source
# File lib/re_track/session_data.rb, line 15
def referer_url
  @request.headers['HTTP_REFERER'].presence || 'none'
end
user_agent() click to toggle source
# File lib/re_track/session_data.rb, line 23
def user_agent
  @request.env['HTTP_USER_AGENT']
end