diff options
author | Milo Casagrande <milo.casagrande@linaro.org> | 2014-10-27 10:48:23 +0100 |
---|---|---|
committer | Milo Casagrande <milo.casagrande@linaro.org> | 2014-10-27 10:48:23 +0100 |
commit | 3866d615bf3a4649a209f8f0635d4787cc7841b0 (patch) | |
tree | 16dfc0865d686e5a577bfcd6b597f108fb57aed0 | |
parent | b95a31887853d88f8d92a524876dca9650b4a51d (diff) |
base: Add Google Analytics.
* Add google analytics code snippet in base template.
* Add default GOOGLE_ANALYTICS_ID variable (set to None).
* Add context preprocessor to automatically include the
analytics code ID.
Change-Id: I7dbeb283d1579873410c71b8d45a0ab31bf04334
-rw-r--r-- | app/dashboard/__init__.py | 5 | ||||
-rw-r--r-- | app/dashboard/default_settings.py | 3 | ||||
-rw-r--r-- | app/dashboard/templates/base.html | 15 |
3 files changed, 23 insertions, 0 deletions
diff --git a/app/dashboard/__init__.py b/app/dashboard/__init__.py index 3ed6056..4319308 100644 --- a/app/dashboard/__init__.py +++ b/app/dashboard/__init__.py @@ -147,6 +147,11 @@ app.add_url_rule( ) +@app.context_processor +def inject_analytics(): + return dict(analytics=app.config.get('GOOGLE_ANALYTICS_ID')) + + @app.errorhandler(404) def page_not_found(e): path = os.path.join(app.root_path, 'static', 'html', '404-content.html') diff --git a/app/dashboard/default_settings.py b/app/dashboard/default_settings.py index f01e576..292ab3a 100644 --- a/app/dashboard/default_settings.py +++ b/app/dashboard/default_settings.py @@ -67,5 +67,8 @@ BISECT_API_ENDPOINT = '/api/bisect' # for the browser to show it all. DATE_RANGE = 5 +# Google Analytics code. +GOOGLE_ANALYTICS_ID = None + DEBUG = True TESTING = DEBUG diff --git a/app/dashboard/templates/base.html b/app/dashboard/templates/base.html index c460f8f..bc5555b 100644 --- a/app/dashboard/templates/base.html +++ b/app/dashboard/templates/base.html @@ -71,6 +71,21 @@ <script type="text/javascript" src="/static/js/jquery.hotkeymap-1.0.min.js"></script> <script type="text/javascript" src="/static/js/linaro-hotkeys-1.0.min.js"></script> <script type="text/javascript" src="/static/js/linaro-base-1.0.0.js"></script> +{%- block analytics %} +{%- if analytics %} +<script type="text/javascript"> + var _gaq = _gaq || []; + _gaq.push(['_setAccount', '{{ analytics }}']); + _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> +{%- endif %} +{%- endblock %} {# Analytics block #} {%- endblock %} </body> </html> |