]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/piwik.js
Mark javascript issued cookies with SameSite=Lax
[rails.git] / app / assets / javascripts / piwik.js
index d81a9ec630a97e2da3cf94c8152cb788a6ee1e17..5353a99ac199609cd763903e953083625501cdc0 100644 (file)
@@ -1,21 +1,32 @@
 if (OSM.PIWIK) {
   $(document).ready(function () {
     var base = document.location.protocol + "//" + OSM.PIWIK.location + "/";
 if (OSM.PIWIK) {
   $(document).ready(function () {
     var base = document.location.protocol + "//" + OSM.PIWIK.location + "/";
+    var piwikTracker;
 
 
-    $.ajax({
+    var piwikLoader = $.ajax({
       url: base + "piwik.js",
       dataType: "script",
       cache: true,
       success: function () {
       url: base + "piwik.js",
       dataType: "script",
       cache: true,
       success: function () {
-        var piwikTracker = Piwik.getTracker(base + "piwik.php", OSM.PIWIK.site);
-      
+        piwikTracker = Piwik.getTracker(base + "piwik.php", OSM.PIWIK.site);
+
+        if (OSM.user) {
+          piwikTracker.setUserId(OSM.user.toString());
+        }
+
         piwikTracker.trackPageView();
         piwikTracker.enableLinkTracking();
         piwikTracker.trackPageView();
         piwikTracker.enableLinkTracking();
-      
+
         $("meta[name=piwik-goal]").each(function () {
           piwikTracker.trackGoal($(this).attr("content"));
         });
       }
     });
         $("meta[name=piwik-goal]").each(function () {
           piwikTracker.trackGoal($(this).attr("content"));
         });
       }
     });
+
+    $("body").on("piwikgoal", function (e, goal) {
+      piwikLoader.done(function () {
+        piwikTracker.trackGoal(goal);
+      });
+    });
   });
 }
   });
 }