Skip to content

Commit 6b24ceb

Browse files
committed
small code improvements
1 parent 92f02b5 commit 6b24ceb

File tree

2 files changed

+18
-19
lines changed

2 files changed

+18
-19
lines changed

plugins/MultiSites/API.php

+17-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@
2020
use Piwik\Period;
2121
use Piwik\Period\Range;
2222
use Piwik\Piwik;
23+
use Piwik\Plugins\CoreHome\Columns\Metrics\EvolutionMetric;
2324
use Piwik\Plugins\Goals\Archiver;
25+
use Piwik\Plugins\MultiSites\Columns\Metrics\EcommerceOnlyEvolutionMetric;
2426
use Piwik\Plugins\SitesManager\API as APISitesManager;
2527
use Piwik\Scheduler\Scheduler;
2628
use Piwik\SettingsPiwik;
@@ -174,13 +176,11 @@ private function getSitesIdFromPattern(?string $pattern, ?string $_restrictSites
174176
$sites = Request::processRequest(
175177
'SitesManager.getPatternMatchSites',
176178
[
177-
'pattern' => $pattern,
178-
// added because caller could overwrite these
179-
'limit' => SettingsPiwik::getWebsitesCountToDisplay(),
180-
'showColumns' => '',
181-
'hideColumns' => '',
182-
'format' => 'original'
183-
]
179+
'pattern' => $pattern,
180+
'limit' => SettingsPiwik::getWebsitesCountToDisplay(),
181+
'format' => 'original'
182+
],
183+
[]
184184
);
185185

186186
if (!empty($sites)) {
@@ -239,7 +239,7 @@ public function getOne(
239239
* @param null|string $segment
240240
* @param string $pattern
241241
* @param int $filter_limit
242-
* @return array[]
242+
* @return array<string,mixed>
243243
* @throws Exception
244244
*/
245245
public function getAllWithGroups(
@@ -284,7 +284,6 @@ private function buildDataTable(
284284
bool $multipleWebsitesRequested,
285285
?array $showColumns
286286
): DataTableInterface {
287-
// build the archive type used to query archive data
288287
$archive = Archive::build(
289288
$idSites,
290289
$period,
@@ -430,8 +429,11 @@ private function calculateEvolutionPercentages(
430429
array $apiMetrics
431430
): void {
432431
if (get_class($currentData) != get_class($pastData)) { // sanity check for regressions
433-
throw new Exception("Expected \$pastData to be of type " . get_class($currentData) . " - got "
434-
. get_class($pastData) . ".");
432+
throw new Exception(sprintf(
433+
'Expected $pastData to be of type %1$s - got %2$s.',
434+
get_class($currentData),
435+
get_class($pastData)
436+
));
435437
}
436438

437439
if ($currentData instanceof DataTable\Map) {
@@ -444,8 +446,8 @@ private function calculateEvolutionPercentages(
444446
$extraProcessedMetrics = $currentData->getMetadata(DataTable::EXTRA_PROCESSED_METRICS_METADATA_NAME);
445447
foreach ($apiMetrics as $metricSettings) {
446448
$evolutionMetricClass = $this->isEcommerceEvolutionMetric($metricSettings)
447-
? "Piwik\\Plugins\\MultiSites\\Columns\\Metrics\\EcommerceOnlyEvolutionMetric"
448-
: "Piwik\\Plugins\\CoreHome\\Columns\\Metrics\\EvolutionMetric";
449+
? EcommerceOnlyEvolutionMetric::class
450+
: EvolutionMetric::class;
449451

450452
$extraProcessedMetrics = is_array($extraProcessedMetrics) ? $extraProcessedMetrics : [];
451453
$extraProcessedMetrics[] = new $evolutionMetricClass(
@@ -573,7 +575,7 @@ private function setMetricsTotalsMetadata(DataTableInterface $dataTable, array $
573575
*
574576
* @param DataTable|DataTable\Map $dataTable
575577
* @param DataTable|DataTable\Map $pastData
576-
* @param array $apiMetrics Metrics info.
578+
* @param array<string,string> $apiMetrics Metrics info.
577579
*/
578580
private function setPreviousMetricsTotalsMetadata(
579581
DataTableInterface $dataTable,
@@ -656,14 +658,10 @@ private static function getLastPeriodMetadataName(string $name): string
656658

657659
private function populateLabel(DataTableInterface $dataTable): void
658660
{
661+
// ensure label column is set and always the first column
659662
$dataTable->filter(function (DataTable $table) {
660663
foreach ($table->getRowsWithoutSummaryRow() as $row) {
661664
$row->setColumn('label', $row->getMetadata('idsite'));
662-
}
663-
});
664-
// make sure label column is always first column
665-
$dataTable->queueFilter(function (DataTable $table) {
666-
foreach ($table->getRowsWithoutSummaryRow() as $row) {
667665
$row->setColumns(array_merge(['label' => $row->getColumn('label')], $row->getColumns()));
668666
}
669667
});

plugins/MultiSites/tests/UI/AllWebsitesDashboard_spec.js

+1
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,7 @@ describe('AllWebsitesDashboard', function () {
385385
select.val(hitsOption.val()).change();
386386
});
387387

388+
await page.mouse.move(0, 0);
388389
await page.waitForNetworkIdle();
389390

390391
expect(await page.screenshotSelector('#main')).to.matchImage('evolution_change');

0 commit comments

Comments
 (0)