diff options
author | mattab <matthieu.aubry@gmail.com> | 2013-11-13 08:04:24 +0400 |
---|---|---|
committer | mattab <matthieu.aubry@gmail.com> | 2013-11-13 08:04:24 +0400 |
commit | 0518d45f476c52349cddcf5aca309f78f6b01656 (patch) | |
tree | 421815a279ba2c494c0d4f847540a700a094d3c0 /core | |
parent | f152d6d3d9ac16487df76971176edc11d5fb1cf9 (diff) |
Refs #4278 to process unique visitors, isSingleSite() is required (no unique visitors cross-sites for now)
Diffstat (limited to 'core')
-rw-r--r-- | core/ArchiveProcessor.php | 14 | ||||
-rw-r--r-- | core/ArchiveProcessor/Parameters.php | 7 |
2 files changed, 13 insertions, 8 deletions
diff --git a/core/ArchiveProcessor.php b/core/ArchiveProcessor.php index c09cd3b611..189f861b4c 100644 --- a/core/ArchiveProcessor.php +++ b/core/ArchiveProcessor.php @@ -367,7 +367,8 @@ class ArchiveProcessor { if ( $row->getColumn('nb_uniq_visitors') !== false) { if (SettingsPiwik::isUniqueVisitorsEnabled($this->getParams()->getPeriod()->getLabel())) { - $row->setColumn('nb_uniq_visitors', (float)$this->computeNbUniqVisitors()); + $uniqueVisitors = (float)$this->computeNbUniqVisitors(); + $row->setColumn('nb_uniq_visitors', $uniqueVisitors); } else { $row->deleteColumn('nb_uniq_visitors'); } @@ -466,16 +467,15 @@ class ArchiveProcessor } $rowMetrics = $results->getFirstRow(); - if($this->getParams()->isSingleSiteDayArchive()) { + if($rowMetrics === false) { + $rowMetrics = new Row; + } + if($this->getParams()->isSingleSite() ) { $this->enrichWithUniqueVisitorsMetric($rowMetrics); } $this->renameColumnsAfterAggregation($results); - if ($rowMetrics === false) { - $metrics = array(); - } else { - $metrics = $rowMetrics->getColumns(); - } + $metrics = $rowMetrics->getColumns(); foreach ($columns as $name) { if (!isset($metrics[$name])) { diff --git a/core/ArchiveProcessor/Parameters.php b/core/ArchiveProcessor/Parameters.php index f662ebd276..108ec126a7 100644 --- a/core/ArchiveProcessor/Parameters.php +++ b/core/ArchiveProcessor/Parameters.php @@ -141,11 +141,16 @@ class Parameters */ public function isSingleSiteDayArchive() { - $oneSite = count($this->getIdSites()) == 1; + $oneSite = $this->isSingleSite(); $oneDay = $this->getPeriod()->getLabel() == 'day'; return $oneDay && $oneSite; } + public function isSingleSite() + { + return count($this->getIdSites()) == 1; + } + public function logStatusDebug($isTemporary) { $temporary = 'definitive archive'; |