update Piwik to version 2.16 (fixes #91)

This commit is contained in:
oliver 2016-04-10 18:55:57 +02:00
commit d885a4baa9
5833 changed files with 418860 additions and 226988 deletions

View file

@ -1,6 +1,6 @@
<?php
/**
* Piwik - Open source web analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -8,15 +8,14 @@
*/
namespace Piwik\DataTable\Row;
use Piwik\DataTable\Manager;
use Piwik\DataTable;
use Piwik\DataTable\Row;
/**
* A special row whose column values are the aggregate of the row's subtable.
*
*
* This class creates sets its own columns to the sum of each row in the row's subtable.
*
*
* Non-numeric columns are bypassed during summation and do not appear in this
* rows columns.
*
@ -27,7 +26,7 @@ class DataTableSummaryRow extends Row
{
/**
* Constructor.
*
*
* @param DataTable|null $subTable The subtable of this row. This parameter is mostly for
* convenience. If set, its rows will be summed to this one,
* but it will not be set as this row's subtable (so
@ -35,9 +34,7 @@ class DataTableSummaryRow extends Row
*/
public function __construct($subTable = null)
{
parent::__construct();
if ($subTable !== null) {
if (isset($subTable)) {
$this->sumTable($subTable);
}
}
@ -47,9 +44,8 @@ class DataTableSummaryRow extends Row
*/
public function recalculate()
{
$id = $this->getIdSubDataTable();
if ($id !== null) {
$subTable = Manager::getInstance()->getTable($id);
$subTable = $this->getSubtable();
if ($subTable) {
$this->sumTable($subTable);
}
}
@ -61,8 +57,17 @@ class DataTableSummaryRow extends Row
*/
private function sumTable($table)
{
foreach ($table->getRows() as $row) {
$this->sumRow($row, $enableCopyMetadata = false, $table->getMetadata(DataTable::COLUMN_AGGREGATION_OPS_METADATA_NAME));
$metadata = $table->getMetadata(DataTable::COLUMN_AGGREGATION_OPS_METADATA_NAME);
$enableCopyMetadata = false;
foreach ($table->getRowsWithoutSummaryRow() as $row) {
$this->sumRow($row, $enableCopyMetadata, $metadata);
}
$summaryRow = $table->getRowFromId(DataTable::ID_SUMMARY_ROW);
if ($summaryRow) {
$this->sumRow($summaryRow, $enableCopyMetadata, $metadata);
}
}
}