Sha256: 01df37855783e52352a890528988ace82c77c99ba71fdbee3978b77ac2550eb9
Contents?: true
Size: 823 Bytes
Versions: 2
Compression:
Stored size: 823 Bytes
Contents
module ReTrack module Tracker extend ActiveSupport::Concern included do before_filter :rt_track_referer end def rt_track_referer if session[:retrack].nil? && !request_from_a_known_bot? session[:retrack] = hash = {} hash[:referer_url] = request.headers['HTTP_REFERER'].presence || 'none' hash[:first_url] = request.url hash[:user_agent] = request.env['HTTP_USER_AGENT'] hash[:first_visited_at] = Time.now hash[:ip] = request.remote_ip end end def request_from_a_known_bot? bot_user_agents = ['GoogleBot', 'Mediapartners-Google', 'msnbot', 'TwengaBot', 'DigExt; DTS Agent', 'YandexImages'] bot_user_agents_re = /\b(#{bot_user_agents * '|'})\b/i request.user_agent =~ bot_user_agents_re end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
re_track-0.3.1 | lib/re_track/tracker.rb |
re_track-0.3.0 | lib/re_track/tracker.rb |