Class: IscAnalytics::Services
- Inherits:
-
Object
- Object
- IscAnalytics::Services
- Defined in:
- lib/isc_analytics/services.rb
Class Method Summary collapse
- .google_tag(key) ⇒ Object
- .ipinfodb_tag(key) ⇒ Object
- .kissmetrics_tag(key) ⇒ Object
- .optimizely_tag(key) ⇒ Object
- .scripts(providers_config) ⇒ Object
Class Method Details
.google_tag(key) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/isc_analytics/services.rb', line 31 def self.google_tag(key) Tags.script_tag <<-SCRIPT var _gaq = _gaq || []; _gaq.push(['_setAccount', '#{key}']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); SCRIPT end |
.ipinfodb_tag(key) ⇒ Object
54 55 56 57 |
# File 'lib/isc_analytics/services.rb', line 54 def self.ipinfodb_tag(key) return nil if key.blank? Tags.script_tag "window.IPINFODB_KEY = '#{key}';" end |
.kissmetrics_tag(key) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/isc_analytics/services.rb', line 16 def self.kissmetrics_tag(key) Tags.script_tag <<-SCRIPT var _kmq = _kmq || []; function _kms(u){ setTimeout(function(){ var s = document.createElement('script'); var f = document.getElementsByTagName('script')[0]; s.type = 'text/javascript'; s.async = true; s.src = u; f.parentNode.insertBefore(s, f); }, 1); } _kms('//i.kissmetrics.com/i.js'); _kms('//doug1izaerwt3.cloudfront.net/#{key}.1.js'); SCRIPT end |
.optimizely_tag(key) ⇒ Object
44 45 46 47 48 49 50 51 52 |
# File 'lib/isc_analytics/services.rb', line 44 def self.optimizely_tag(key) return nil if key.blank? <<-HTML <script src='//cdn.optimizely.com/js/#{key}.js\'></script> <script type="text/javascript"> window['optimizely'] = optimizely || []; </script> HTML end |
.scripts(providers_config) ⇒ Object
7 8 9 10 11 12 13 14 |
# File 'lib/isc_analytics/services.rb', line 7 def self.scripts(providers_config) scripts = [] scripts << kissmetrics_tag(providers_config.kissmetrics["key"]) if providers_config.kissmetrics scripts << google_tag(providers_config.google_analytics["key"]) if providers_config.google_analytics scripts << optimizely_tag(providers_config.optimizely["key"]) if providers_config.optimizely scripts << ipinfodb_tag(providers_config.ipinfodb["key"]) if providers_config.ipinfodb scripts end |