from django.conf import settings
-from settings import PIWIK_TOKEN, PIWIK_HOST, PIWIK_HTTPFORCE, PIWIK_TRACKCODE
+from settings import PIWIK_TOKEN, PIWIK_HOST, PIWIK_HTTPFORCE,\
+ PIWIK_TRACKCODE, PIWIK_EXCLUDE_REFERER
ire_body = re.compile(re.escape('</body>'), re.IGNORECASE)
if PIWIK_TOKEN is None:
return response
+ http_referer = request.META.get('HTTP_REFERER', "")
+ referer = http_referer
+
+ for excl in PIWIK_EXCLUDE_REFERER:
+ if excl in http_referer:
+ referer = ""
+ break
+
if request.is_secure() and not PIWIK_HTTPFORCE:
protocol = "https"
else:
'token': PIWIK_TOKEN,
'protocol': protocol,
'static': settings.STATIC_URL,
+ 'referer': referer,
}
-
+ track += http_referer
content = response.content
content_with_trackcode = ire_body.sub('%s</body>' % track, content)
response.content = content_with_trackcode
PIWIK_TOKEN = getattr(settings, 'PIWIK_TOKEN', None)
PIWIK_HTTPFORCE = getattr(settings, 'PIWIK_HTTPFORCE', False)
PIWIK_HOST = getattr(settings, 'PIWIK_HOST', 'auf.stats.mysnip-hosting.de')
+PIWIK_EXCLUDE_REFERER = (
+ 'id.auf.org',
+ )
PIWIK_TRACKCODE = """
<!-- Piwik -->
<script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", %(token)s);
+ piwikTracker.disableCookies();
+ piwikTracker.setReferrerUrl('%(referer)s');
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
}