lib/ahoy_matey.rb in ahoy_matey-0.1.1 vs lib/ahoy_matey.rb in ahoy_matey-0.1.2
- old
+ new
@@ -9,13 +9,17 @@
require "ahoy/engine"
module Ahoy
def self.visit_model
- ::Visit
+ @visit_model || ::Visit
end
+ def self.visit_model=(visit_model)
+ @visit_model = visit_model
+ end
+
# TODO private
# performance hack for referer-parser
def self.referrer_parser
@referrer_parser ||= RefererParser::Referer.new("https://github.com/ankane/ahoy")
end
@@ -24,10 +28,10 @@
ActionController::Base.send :include, Ahoy::Controller
ActiveRecord::Base.send(:extend, Ahoy::Model) if defined?(ActiveRecord)
if defined?(Warden)
- Warden::Manager.after_authentication do |user, auth, opts|
+ Warden::Manager.after_set_user except: :fetch do |user, auth, opts|
request = Rack::Request.new(auth.env)
if request.cookies["ahoy_visit"]
visit = Ahoy.visit_model.where(visit_token: request.cookies["ahoy_visit"]).first
if visit
visit.user = user