Class: Analytical::Modules::KissMetrics
- Inherits:
-
Object
- Object
- Analytical::Modules::KissMetrics
show all
- Includes:
- Base
- Defined in:
- lib/analytical/modules/kiss_metrics.rb
Instance Attribute Summary
Attributes included from Base
#command_store, #initialized, #options, #tracking_command_location
Instance Method Summary
collapse
Methods included from Base
#init_location, #init_location?, #process_queued_commands, #protocol, #queue
Constructor Details
#initialize(options = {}) ⇒ KissMetrics
Returns a new instance of KissMetrics.
6
7
8
9
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 6
def initialize(options={})
super
@tracking_command_location = :body_prepend
end
|
Instance Method Details
#alias_identity(old_identity, new_identity) ⇒ Object
48
49
50
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 48
def alias_identity(old_identity, new_identity)
"_kmq.push([\"alias\", \"#{old_identity}\", \"#{new_identity}\"]);"
end
|
#event(name, *args) ⇒ Object
38
39
40
41
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 38
def event(name, *args)
data = args.first || {}
"_kmq.push([\"record\", \"#{name}\", #{data.to_json}]);"
end
|
#identify(id, *args) ⇒ Object
33
34
35
36
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 33
def identify(id, *args)
data = args.first || {}
"_kmq.push([\"identify\", \"#{data[:email]}\"]);"
end
|
#init_javascript(location) ⇒ Object
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 11
def init_javascript(location)
init_location(location) do
js = " <!-- Analytical Init: KissMetrics -->\n <script type=\"text/javascript\">\n var _kmq = _kmq || [];\n function _kms(u){\n setTimeout(function(){\n var s = document.createElement('script'); var f = document.getElementsByTagName('script')[0]; s.type = 'text/javascript'; s.async = true;\n s.src = u; f.parentNode.insertBefore(s, f);\n }, 1);\n }\n _kms('//i.kissmetrics.com/i.js');_kms('\#{options[:js_url_key]}');\n </script>\n <script type=\"text/javascript\">\n _kmq.push(['pageView']);\n </script>\n HTML\n js\n end\nend\n"
|
#set(data) ⇒ Object
43
44
45
46
|
# File 'lib/analytical/modules/kiss_metrics.rb', line 43
def set(data)
return '' if data.blank?
"_kmq.push([\"set\", #{data.to_json}]);"
end
|