Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/UserCountry/API.php6
-rw-r--r--plugins/UserCountry/UserCountry.php6
-rwxr-xr-xtests/PHPUnit/Integration/ManyVisitorsOneWebsiteTest.php12
-rwxr-xr-xtests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest__UserCountry.getCity_month.xml10
-rwxr-xr-xtests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_city__UserCountry.getCity_month.xml2
-rwxr-xr-xtests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_lat_long__UserCountry.getCity_month.xml4
-rwxr-xr-xtests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_region__UserCountry.getCity_month.xml2
7 files changed, 26 insertions, 16 deletions
diff --git a/plugins/UserCountry/API.php b/plugins/UserCountry/API.php
index 0309dc01d8..b684ebdb41 100644
--- a/plugins/UserCountry/API.php
+++ b/plugins/UserCountry/API.php
@@ -130,10 +130,12 @@ class Piwik_UserCountry_API
array('label', 'region', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 1, $unk)));
$dataTable->filter('ColumnCallbackAddMetadata',
array('label', 'country', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 2, $unk)));
+
+ // backwards compatibility: for reports that have lat|long in label
$dataTable->filter('ColumnCallbackAddMetadata',
- array('label', 'lat', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 3)));
+ array('label', 'lat', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 3, false)));
$dataTable->filter('ColumnCallbackAddMetadata',
- array('label', 'long', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 4)));
+ array('label', 'long', 'Piwik_UserCountry_getElementFromStringArray', array($separator, 4, false)));
// add country name & region name metadata
$dataTable->filter('MetadataCallbackAddMetadata',
diff --git a/plugins/UserCountry/UserCountry.php b/plugins/UserCountry/UserCountry.php
index 5cf51e690f..91e6feaf05 100644
--- a/plugins/UserCountry/UserCountry.php
+++ b/plugins/UserCountry/UserCountry.php
@@ -512,9 +512,9 @@ class Piwik_UserCountry extends Piwik_Plugin
$lat = round($lat, Piwik_UserCountry_LocationProvider::GEOGRAPHIC_COORD_PRECISION);
$long = round($long, Piwik_UserCountry_LocationProvider::GEOGRAPHIC_COORD_PRECISION);
- // append latitude + longitude to label
- $newLabel = $label.self::LOCATION_SEPARATOR.$lat.self::LOCATION_SEPARATOR.$long;
- $row->setColumn('label', $newLabel);
+ // set latitude + longitude metadata
+ $row->setMetadata('lat', $lat);
+ $row->setMetadata('long', $long);
}
}
}
diff --git a/tests/PHPUnit/Integration/ManyVisitorsOneWebsiteTest.php b/tests/PHPUnit/Integration/ManyVisitorsOneWebsiteTest.php
index fd4e07d025..a72427b302 100755
--- a/tests/PHPUnit/Integration/ManyVisitorsOneWebsiteTest.php
+++ b/tests/PHPUnit/Integration/ManyVisitorsOneWebsiteTest.php
@@ -178,13 +178,13 @@ class Test_Piwik_Integration_ManyVisitorsOneWebsiteTest extends IntegrationTestC
Piwik_UserCountry_LocationProvider::$providers = null;
Piwik_UserCountry_LocationProvider::setCurrentProvider('mock_provider');
Piwik_UserCountry_LocationProvider::getCurrentProvider()->setLocations(array(
- self::makeLocation('Stratford-upon-Avon', 'P3', 'gb'), // template location
+ self::makeLocation('Stratford-upon-Avon', 'P3', 'gb', 123.456, 21.321), // template location
// same region, different city, same country
self::makeLocation('Nuneaton and Bedworth', 'P3', 'gb'),
- // same region, city & country
- self::makeLocation('Stratford-upon-Avon', 'P3', 'gb'),
+ // same region, city & country (different lat/long)
+ self::makeLocation('Stratford-upon-Avon', 'P3', 'gb', 124.456, 22.231),
// same country, different region & city
self::makeLocation('London', 'H9', 'gb'),
@@ -211,10 +211,12 @@ class Test_Piwik_Integration_ManyVisitorsOneWebsiteTest extends IntegrationTestC
Piwik_UserCountry_LocationProvider::setCurrentProvider('default');
}
- public static function makeLocation( $city, $region, $country )
+ public static function makeLocation( $city, $region, $country, $lat = null, $long = null )
{
return array(Piwik_UserCountry_LocationProvider::CITY_NAME_KEY => $city,
Piwik_UserCountry_LocationProvider::REGION_CODE_KEY => $region,
- Piwik_UserCountry_LocationProvider::COUNTRY_CODE_KEY => $country);
+ Piwik_UserCountry_LocationProvider::COUNTRY_CODE_KEY => $country,
+ Piwik_UserCountry_LocationProvider::LATITUDE_KEY => $lat,
+ Piwik_UserCountry_LocationProvider::LONGITUDE_KEY => $long);
}
}
diff --git a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest__UserCountry.getCity_month.xml b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest__UserCountry.getCity_month.xml
index 91ab989032..690e22f3f7 100755
--- a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest__UserCountry.getCity_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest__UserCountry.getCity_month.xml
@@ -41,11 +41,11 @@
<nb_conversions>6</nb_conversions>
<revenue>30</revenue>
<sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors>
+ <lat>49.25</lat>
+ <long>-123.133</long>
<city_name>Vancouver</city_name>
<region>BC</region>
<country>ca</country>
- <lat>49.25</lat>
- <long>-123.133</long>
<country_name>Canada</country_name>
<region_name>British Columbia</region_name>
<logo>plugins/UserCountry/flags/ca.png</logo>
@@ -67,6 +67,8 @@
<nb_conversions>4</nb_conversions>
<revenue>20</revenue>
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <lat>124.456</lat>
+ <long>22.231</long>
<city_name>Stratford-upon-Avon</city_name>
<region>P3</region>
<country>gb</country>
@@ -91,11 +93,11 @@
<nb_conversions>2</nb_conversions>
<revenue>10</revenue>
<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+ <lat>47.249</lat>
+ <long>6.018</long>
<city_name>Besançon</city_name>
<region>A6</region>
<country>fr</country>
- <lat>47.249</lat>
- <long>6.018</long>
<country_name>France</country_name>
<region_name>Franche-Comte</region_name>
<logo>plugins/UserCountry/flags/fr.png</logo>
diff --git a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_city__UserCountry.getCity_month.xml b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_city__UserCountry.getCity_month.xml
index 125b9def81..7604777d1d 100755
--- a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_city__UserCountry.getCity_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_city__UserCountry.getCity_month.xml
@@ -17,6 +17,8 @@
<nb_conversions>4</nb_conversions>
<revenue>20</revenue>
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <lat>124.456</lat>
+ <long>22.231</long>
<city_name>Stratford-upon-Avon</city_name>
<region>P3</region>
<country>gb</country>
diff --git a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_lat_long__UserCountry.getCity_month.xml b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_lat_long__UserCountry.getCity_month.xml
index 13bcaaae32..82aae84260 100755
--- a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_lat_long__UserCountry.getCity_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_lat_long__UserCountry.getCity_month.xml
@@ -17,11 +17,11 @@
<nb_conversions>6</nb_conversions>
<revenue>30</revenue>
<sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors>
+ <lat>49.25</lat>
+ <long>-123.133</long>
<city_name>Vancouver</city_name>
<region>BC</region>
<country>ca</country>
- <lat>49.25</lat>
- <long>-123.133</long>
<country_name>Canada</country_name>
<region_name>British Columbia</region_name>
<logo>plugins/UserCountry/flags/ca.png</logo>
diff --git a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_region__UserCountry.getCity_month.xml b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_region__UserCountry.getCity_month.xml
index 8e7f059ac7..724be9b9c5 100755
--- a/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_region__UserCountry.getCity_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ManyVisitorsOneWebsiteTest_segment_region__UserCountry.getCity_month.xml
@@ -17,6 +17,8 @@
<nb_conversions>4</nb_conversions>
<revenue>20</revenue>
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <lat>124.456</lat>
+ <long>22.231</long>
<city_name>Stratford-upon-Avon</city_name>
<region>P3</region>
<country>gb</country>