Skip to content

Commit

Permalink
add support for piwik
Browse files Browse the repository at this point in the history
  • Loading branch information
t-8ch committed Dec 16, 2015
1 parent f551655 commit edd4057
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 0 deletions.
20 changes: 20 additions & 0 deletions oscad/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
from collections import namedtuple

from pyramid.config import Configurator
from pyramid.session import UnencryptedCookieSessionFactoryConfig
from pyramid.settings import asbool
Expand All @@ -20,6 +22,9 @@ def __init__(self, legal_expert=None, lsuc_extra_info=None,
self.oslic_url = oslic_url


Piwik = namedtuple('Piwik', ['baseurl', 'siteid'])


def oscad_default_legal_expert(request):
return request.translate('your legal expert')

Expand All @@ -30,10 +35,23 @@ def oscad_default_legal_expert(request):
oslic_url=oslic_url)


def piwik_from_settings(settings):
baseurl = settings.get('piwik.baseurl')
siteid = settings.get('piwik.siteid')

if baseurl and siteid is not None:
return Piwik(baseurl, siteid)
return None


def oscad_settings(request):
return request.registry.settings.oscad_settings


def piwik(request):
return request.registry.settings.piwik


def add_toplevel_link(config, route_name, link_text):
def callback():
registry = config.registry
Expand Down Expand Up @@ -93,6 +111,7 @@ def main(global_config, **settings):
config.add_directive('add_toplevel_link', add_toplevel_link)
config.add_request_method(scss_path)
config.add_request_method(oscad_settings, property=True)
config.add_request_method(piwik, property=True)
config.add_request_method(oslic_chapter_url)

config.add_renderer('scss', renderer_factory)
Expand All @@ -116,6 +135,7 @@ def main(global_config, **settings):
'jquery')

config.registry.settings.oscad_settings = oscad_default_settings
config.registry.settings.piwik = piwik_from_settings(settings)

config.add_route('index', '')
config.add_route('request', 'request')
Expand Down
4 changes: 4 additions & 0 deletions oscad/templates/oscad/base.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,9 @@
{%- block content %}{%- endblock -%}
</div>
{%- include 'javascript.jinja2' -%}
{%- if request.piwik -%}
{%- from 'piwik.jinja2' import piwik -%}
{{ piwik(request.piwik.baseurl, request.piwik.siteid) }}
{%- endif -%}
</body>
</html>
20 changes: 20 additions & 0 deletions oscad/templates/oscad/piwik.jinja2
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{%- macro piwik(baseurl, siteid) -%}
<script type="text/javascript">
var _paq = _paq || [];
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="{{ baseurl }}/";
_paq.push(['setTrackerUrl', u+'piwik.php']);
_paq.push(['setSiteId', {{ siteid | int }}]);
var d=document,
g=d.createElement('script'),
s=d.getElementsByTagName('script')[0];
g.type='text/javascript';
g.async=true;
g.defer=true;
g.src=u+'piwik.js';
s.parentNode.insertBefore(g,s); })();
</script>
<noscript><p><img src="{{ baseurl }}/piwik.php?idsite={{ siteid | int}}" style="border:0;" alt="" /></p></noscript>
{%- endmacro -%}

0 comments on commit edd4057

Please sign in to comment.