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:
authordiosmosis <diosmosis@users.noreply.github.com>2018-09-10 07:21:35 +0300
committerGitHub <noreply@github.com>2018-09-10 07:21:35 +0300
commit6e35dfb52f4a22ecd82b2bb92198dd37e387d004 (patch)
tree2e615ace470d1edd0fa6afa46c4d07579c2194ca /plugins/MultiSites
parent3f64755160241793de0bb77b42276e6a43f27582 (diff)
Use request instead of API instance so events are triggered in MultiSites. (#13289)
* Use request instead of API instance so events are triggered in MultiSites. * Add required query params to MultiSites/Dashboard and rewrite column names in filter not queued filter in MultiSites.getAll. * Fix tests. * fixing tests.
Diffstat (limited to 'plugins/MultiSites')
-rw-r--r--plugins/MultiSites/Dashboard.php17
-rw-r--r--plugins/MultiSites/tests/Integration/ControllerTest.php6
-rw-r--r--plugins/MultiSites/tests/Integration/DashboardTest.php32
3 files changed, 40 insertions, 15 deletions
diff --git a/plugins/MultiSites/Dashboard.php b/plugins/MultiSites/Dashboard.php
index 894eddcd64..c1ddd555b8 100644
--- a/plugins/MultiSites/Dashboard.php
+++ b/plugins/MultiSites/Dashboard.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\MultiSites;
use Piwik\API\DataTablePostProcessor;
+use Piwik\API\Request;
use Piwik\API\ResponseBuilder;
use Piwik\Config;
use Piwik\Metrics\Formatter;
@@ -47,9 +48,19 @@ class Dashboard
*/
public function __construct($period, $date, $segment)
{
- $sites = API::getInstance()->getAll($period, $date, $segment, $_restrictSitesToLogin = false,
- $enhanced = true, $searchTerm = false,
- $this->displayedMetricColumns);
+ $sites = Request::processRequest('MultiSites.getAll', [
+ 'period' => $period,
+ 'date' => $date,
+ 'segment' => $segment,
+ 'enhanced' => '1',
+ // NOTE: have to select everything since with queued filters disabled some metrics won't be renamed to
+ // their display name, and so showColumns will end up removing those.
+ 'showColumns' => '',
+ 'disable_queued_filters' => '1',
+ 'filter_limit' => '-1',
+ 'filter_offset' => '0',
+ ], $default = []);
+
$sites->deleteRow(DataTable::ID_SUMMARY_ROW);
/** @var DataTable $pastData */
diff --git a/plugins/MultiSites/tests/Integration/ControllerTest.php b/plugins/MultiSites/tests/Integration/ControllerTest.php
index 6f6b1e743a..fdc1da044a 100644
--- a/plugins/MultiSites/tests/Integration/ControllerTest.php
+++ b/plugins/MultiSites/tests/Integration/ControllerTest.php
@@ -47,6 +47,12 @@ class ControllerTest extends SystemTestCase
'idsite' => 1,
'group' => '',
'main_url' => 'http://piwik.net',
+ 'nb_conversions' => 1,
+ 'orders' => 1,
+ 'ecommerce_revenue' => 2541,
+ 'nb_conversions_evolution' => '100%',
+ 'orders_evolution' => '100%',
+ 'ecommerce_revenue_evolution' => '100%',
), $sites['sites'][0]);
unset($sites['sites']);
diff --git a/plugins/MultiSites/tests/Integration/DashboardTest.php b/plugins/MultiSites/tests/Integration/DashboardTest.php
index 858af222ce..d2db1507c3 100644
--- a/plugins/MultiSites/tests/Integration/DashboardTest.php
+++ b/plugins/MultiSites/tests/Integration/DashboardTest.php
@@ -68,9 +68,9 @@ class DashboardTest extends IntegrationTestCase
$expectedSites = array (
array (
'label' => 'Site 1',
- 'nb_visits' => 0,
- 'nb_actions' => 0,
- 'nb_pageviews' => 0,
+ 'nb_visits' => '0',
+ 'nb_actions' => '0',
+ 'nb_pageviews' => '0',
'revenue' => '$0',
'visits_evolution' => '0%',
'actions_evolution' => '0%',
@@ -79,12 +79,14 @@ class DashboardTest extends IntegrationTestCase
'idsite' => 1,
'group' => '',
'main_url' => 'http://piwik.net',
+ 'nb_conversions' => 0,
+ 'nb_conversions_evolution' => '0%',
),
array (
'label' => 'Site 2',
- 'nb_visits' => 0,
- 'nb_actions' => 0,
- 'nb_pageviews' => 0,
+ 'nb_visits' => '0',
+ 'nb_actions' => '0',
+ 'nb_pageviews' => '0',
'revenue' => '$0',
'visits_evolution' => '0%',
'actions_evolution' => '0%',
@@ -93,12 +95,14 @@ class DashboardTest extends IntegrationTestCase
'idsite' => 2,
'group' => '',
'main_url' => 'http://piwik.net',
+ 'nb_conversions' => 0,
+ 'nb_conversions_evolution' => '0%',
),
array (
'label' => 'Site 3',
- 'nb_visits' => 0,
- 'nb_actions' => 0,
- 'nb_pageviews' => 0,
+ 'nb_visits' => '0',
+ 'nb_actions' => '0',
+ 'nb_pageviews' => '0',
'revenue' => '$0',
'visits_evolution' => '0%',
'actions_evolution' => '0%',
@@ -107,6 +111,8 @@ class DashboardTest extends IntegrationTestCase
'idsite' => 3,
'group' => '',
'main_url' => 'http://piwik.net',
+ 'nb_conversions' => 0,
+ 'nb_conversions_evolution' => '0%',
),
);
$this->assertEquals($expectedSites, $dashboard->getSites(array(), $limit = 10));
@@ -120,9 +126,9 @@ class DashboardTest extends IntegrationTestCase
$expectedSites = array (
array (
'label' => 'Site 2',
- 'nb_visits' => 0,
- 'nb_actions' => 0,
- 'nb_pageviews' => 0,
+ 'nb_visits' => '0',
+ 'nb_actions' => '0',
+ 'nb_pageviews' => '0',
'revenue' => '$0',
'visits_evolution' => '0%',
'actions_evolution' => '0%',
@@ -131,6 +137,8 @@ class DashboardTest extends IntegrationTestCase
'idsite' => 2,
'group' => '',
'main_url' => 'http://piwik.net',
+ 'nb_conversions' => 0,
+ 'nb_conversions_evolution' => '0%',
),
);
$dashboard->search('site 2');