Sha256: 482fab9344d368842da5b729b47643a9d47d8957939dd38f1d88f1f31e09e1dc

Contents?: true

Size: 603 Bytes

Versions: 3

Compression:

Stored size: 603 Bytes

Contents

require "referer_tracking/engine"
require "referer_tracking/controller_addons"
require "referer_tracking/sweeper"

module RefererTracking

  def self.add_tracking_to(*models_list)
    models_list.each do |model|
      model.class_eval do
        include RefererTracking::TrackableModule
      end
    end

    RefererTracking::Sweeper.class_eval do
      observe models_list
    end
  end

  module TrackableModule
    def self.included(base)
      base.class_eval do
        has_one :referer_tracking, :class_name => "RefererTracking::RefererTracking", :as => :trackable
      end
    end
  end
  
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
referer_tracking-2.0.0 lib/referer_tracking.rb
referer_tracking-1.0.1 lib/referer_tracking.rb
referer_tracking-1.0.0 lib/referer_tracking.rb