Class: UrchinTrackingModule

Inherits:
Object
  • Object
show all
Defined in:
lib/urchin_tracking_module.rb,
lib/urchin_tracking_module/version.rb

Defined Under Namespace

Classes: Defaults

Constant Summary collapse

TRACKING_PARAMETERS =
i(utm_source utm_medium utm_term utm_content utm_campaign)
VERSION =
"1.0.3"

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(url) ⇒ UrchinTrackingModule

Returns a new instance of UrchinTrackingModule.



12
13
14
# File 'lib/urchin_tracking_module.rb', line 12

def initialize(url)
  @url = url
end

Class Method Details

.configure(&block) ⇒ Object



49
50
51
# File 'lib/urchin_tracking_module.rb', line 49

def self.configure(&block)
  Defaults.configure(&block)
end

.mediumObject



57
58
59
# File 'lib/urchin_tracking_module.rb', line 57

def self.medium
  Defaults.config[:utm_medium]
end

.sourceObject



53
54
55
# File 'lib/urchin_tracking_module.rb', line 53

def self.source
  Defaults.config[:utm_source]
end

Instance Method Details

#tracking(params = defaults) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/urchin_tracking_module.rb', line 16

def tracking(params=defaults)
  filtered_params(params).inject(@url) do |url,(name,value)|
    url = add_param(url, "#{name}", value)
    url = add_param(url, "src", value) if name == :utm_source
    url
  end
end