nouvelle version qui ajout le code javascript que lorsque le content type est: text...
[auf_django_piwik.git] / auf / django / piwik / middleware.py
index 56395de..c846158 100644 (file)
@@ -25,7 +25,7 @@ class TrackMiddleware:
         Trackcode injection avant le body s'il y a un token piwik dans la conf
         locale.
         """
-        if PIWIK_TOKEN is None:
+        if PIWIK_TOKEN is None or response.get('Content-Type', '') != 'text/html':
             return response
 
         http_referer = request.META.get('HTTP_REFERER', "")
@@ -41,13 +41,15 @@ class TrackMiddleware:
         else:
             protocol = "http"
 
+        implantation = ""
         user = getattr(request, 'user', None)
         if user and REFERENCES_CHARGEES and user.is_authenticated():
-            employe = ref.Employe.objects.get(courriel=request.user.email)
-            imp_id = employe.implantation.id
-            implantation = "piwikTracker.setCustomVariable(1, 'implantation', '%s', 'visit');" % imp_id
-        else:
-            implantation = ""
+            try:
+                employe = ref.Employe.objects.get(courriel=request.user.email)
+                imp_id = employe.implantation.id
+                implantation = "piwikTracker.setCustomVariable(1, 'implantation', '%s', 'visit');" % imp_id
+            except :
+                pass
 
         track = PIWIK_TRACKCODE % {
                 'host': PIWIK_HOST,