Skip to content
Extraits de code Groupes Projets
Valider 5fa73701 rédigé par diosmosis's avatar diosmosis
Parcourir les fichiers

Fix remaining Plugin.get API methods; delete temporary columns in queued filter.

parent 186e6bfe
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -379,7 +379,7 @@ class Report ...@@ -379,7 +379,7 @@ class Report
} }
if (empty($restrictToColumns)) { if (empty($restrictToColumns)) {
$restrictToColumns = $allMetrics; $restrictToColumns = $this->getAllMetrics();
} }
$processedMetricsById = $this->getProcessedMetricsById(); $processedMetricsById = $this->getProcessedMetricsById();
......
...@@ -55,17 +55,24 @@ class API extends \Piwik\Plugin\API ...@@ -55,17 +55,24 @@ class API extends \Piwik\Plugin\API
public function get($idSite, $period, $date, $segment = false, $columns = false) public function get($idSite, $period, $date, $segment = false, $columns = false)
{ {
Piwik::checkUserHasViewAccess($idSite); Piwik::checkUserHasViewAccess($idSite);
$report = Report::factory("Actions", "get");
$archive = Archive::build($idSite, $period, $date, $segment); $archive = Archive::build($idSite, $period, $date, $segment);
$requestedColumns = Piwik::getArrayFromApiParameter($columns); $requestedColumns = Piwik::getArrayFromApiParameter($columns);
$columns = Report::factory("Actions", "get")->getMetricsRequiredForReport($allColumns = null, $requestedColumns); $columns = $report->getMetricsRequiredForReport($allColumns = null, $requestedColumns);
$inDbColumnNames = array_map(function ($value) { return 'Actions_' . $value; }, $columns); $inDbColumnNames = array_map(function ($value) { return 'Actions_' . $value; }, $columns);
$dataTable = $archive->getDataTableFromNumeric($inDbColumnNames); $dataTable = $archive->getDataTableFromNumeric($inDbColumnNames);
$dataTable->deleteColumns(array_diff($requestedColumns, $columns)); $dataTable->deleteColumns(array_diff($requestedColumns, $columns));
$newNameMapping = array_combine($inDbColumnNames, $columns); $newNameMapping = array_combine($inDbColumnNames, $columns);
$dataTable->filter('ReplaceColumnNames', array($newNameMapping)); $dataTable->filter('ReplaceColumnNames', array($newNameMapping));
$columnsToShow = $requestedColumns ?: $report->getAllMetrics();
$dataTable->queueFilter('ColumnDelete', array($columnsToRemove = array(), $columnsToShow));
return $dataTable; return $dataTable;
} }
......
...@@ -33,7 +33,10 @@ class API extends \Piwik\Plugin\API ...@@ -33,7 +33,10 @@ class API extends \Piwik\Plugin\API
$columns = $report->getMetricsRequiredForReport($this->getCoreColumns($period), $requestedColumns); $columns = $report->getMetricsRequiredForReport($this->getCoreColumns($period), $requestedColumns);
$dataTable = $archive->getDataTableFromNumeric($columns); $dataTable = $archive->getDataTableFromNumeric($columns);
$dataTable->deleteColumns(array_diff($requestedColumns, $columns));
$columnsToShow = $requestedColumns ?: $report->getAllMetrics();
$dataTable->queueFilter('ColumnDelete', array($columnsToRemove = array(), $columnsToShow));
return $dataTable; return $dataTable;
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter