Module: Split::Analytics
- Included in:
- Helper
- Defined in:
- lib/split/analytics.rb,
lib/split/analytics/version.rb
Constant Summary collapse
- VERSION =
'1.1.0'
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 ab_user.nil? arr = [] ab_user.active_experiments.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 = " <script type=\"text/javascript\">\n var _gaq = _gaq || [];\n _gaq.push([\"_setAccount\", \"\#{account}\"]);\n \#{insert_tracker_methods(tracker_methods)}\n \#{custom_variables}\n _gaq.push([\"_trackPageview\"]);\n (function() {\n var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\n ga.src = ('https:' == document.location.protocol ? '\#{ssl_tracker_url}' : '\#{tracker_url}');\n var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n })();\n </script>\n EOF\n code = raw(code) if defined?(raw)\n code\nend\n" |