Module: Split::Analytics
- Included in:
- Helper
- Defined in:
- lib/split/analytics.rb,
lib/split/analytics/version.rb
Constant Summary collapse
- VERSION =
'1.0.1'
Instance Method Summary collapse
Instance Method Details
#custom_variables ⇒ Object
33 34 35 36 37 38 39 40 41 |
# File 'lib/split/analytics.rb', line 33 def custom_variables return nil if session.nil? arr = [] session.each_with_index do |h, i| arr << "_gaq.push([\"_setCustomVar\", #{i + 1}, \"#{h[0]}\", \"#{h[1]}\", 1]);" end arr.reverse[0..4].reverse.join("\n") end |
#tracking_code(options = {}) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/split/analytics.rb', line 5 def tracking_code( = {}) # needs more options: http://code.google.com/apis/analytics/docs/gaJS/gaJSApi.html account = .delete(:account) tracker_url = .delete(:tracker_url) ssl_tracker_url = .delete(:ssl_tracker_url) tracker_methods = .delete(:tracker_methods) tracker_url = 'http://' + (tracker_url || 'www.google-analytics.com/ga.js') ssl_tracker_url = 'https://' + (ssl_tracker_url || 'ssl.google-analytics.com/ga.js') code = <<-EOF <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(["_setAccount", "#{account}"]); #{insert_tracker_methods(tracker_methods)} #{custom_variables} _gaq.push(["_trackPageview"]); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? '#{ssl_tracker_url}' : '#{tracker_url}'); var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> EOF code = raw(code) if defined?(raw) code end |