From 6ff4094c741d91995288de431b9e8fcaddf6c2e9 Mon Sep 17 00:00:00 2001
From: Thomas Steur <thomas.steur@googlemail.com>
Date: Thu, 12 Jun 2014 03:17:33 +0200
Subject: [PATCH] add visitor fields before triggering hook

---
 core/Tracker/Visit.php | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/core/Tracker/Visit.php b/core/Tracker/Visit.php
index dd2608197c..aaba4b4fa4 100644
--- a/core/Tracker/Visit.php
+++ b/core/Tracker/Visit.php
@@ -302,6 +302,14 @@ class Visit implements VisitInterface
         $this->visitorInfo['visit_goal_converted'] = $visitIsConverted ? 1 : 0;
         $this->visitorInfo['config_resolution'] = substr($this->visitorInfo['config_resolution'], 0, 9);
 
+        $dimensions = VisitDimension::getAllDimensions();
+        foreach ($dimensions as $dimension) {
+            if (!method_exists($dimension, 'onNewVisit')) {
+                continue;
+            }
+            $this->visitorInfo[$dimension->getFieldName()] = $dimension->onNewVisit($this->request, $this->visitorInfo, $action);
+        }
+
         /**
          * Triggered before a new [visit entity](/guides/persistence-and-the-mysql-backend#visits) is persisted.
          *
@@ -314,14 +322,6 @@ class Visit implements VisitInterface
          */
         Piwik::postEvent('Tracker.newVisitorInformation', array(&$this->visitorInfo, $this->request));
 
-        $dimensions = VisitDimension::getAllDimensions();
-        foreach ($dimensions as $dimension) {
-            if (!method_exists($dimension, 'onNewVisit')) {
-                continue;
-            }
-            $this->visitorInfo[$dimension->getFieldName()] = $dimension->onNewVisit($this->request, $this->visitorInfo, $action);
-        }
-
         $this->request->overrideLocation($this->visitorInfo);
         $this->printVisitorInformation();
 
-- 
GitLab