diff options
author | mattpiwik <matthieu.aubry@gmail.com> | 2011-12-03 08:19:43 +0400 |
---|---|---|
committer | mattpiwik <matthieu.aubry@gmail.com> | 2011-12-03 08:19:43 +0400 |
commit | 56150c70bc63fe68d535ad45cad55872899aa3e4 (patch) | |
tree | 191cbed6b5db4ffb45826028b46999808f245dd7 /plugins/VisitsSummary | |
parent | 6acb75a9b5aad3086a09f4149bc187b451157c0b (diff) |
Fixes #2811
* Ensuring column names stay in same order when idsites=all
* adding empty columns when they are not set
git-svn-id: http://dev.piwik.org/svn/trunk@5519 59fd770c-687e-43c8-a1e3-f5a4ff64c105
Diffstat (limited to 'plugins/VisitsSummary')
-rw-r--r-- | plugins/VisitsSummary/API.php | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/plugins/VisitsSummary/API.php b/plugins/VisitsSummary/API.php index 0f83a8d593..a0925db38e 100644 --- a/plugins/VisitsSummary/API.php +++ b/plugins/VisitsSummary/API.php @@ -52,36 +52,34 @@ class Piwik_VisitsSummary_API } if(false !== ($actionsPerVisitRequested = array_search('nb_actions_per_visit', $columns))) { - if (!in_array('nb_actions', $columns)) $tempColumns[] = 'nb_actions'; if (!in_array('nb_visits', $columns)) $tempColumns[] = 'nb_visits'; + if (!in_array('nb_actions', $columns)) $tempColumns[] = 'nb_actions'; unset($columns[$actionsPerVisitRequested]); } if(false !== ($averageVisitDurationRequested = array_search('avg_time_on_site', $columns))) { - if (!in_array('sum_visit_length', $columns)) $tempColumns[] = 'sum_visit_length'; if (!in_array('nb_visits', $columns)) $tempColumns[] = 'nb_visits'; + if (!in_array('sum_visit_length', $columns)) $tempColumns[] = 'sum_visit_length'; unset($columns[$averageVisitDurationRequested]); } - $tempColumns = array_unique($tempColumns); + rsort($tempColumns); $columns = array_merge($columns, $tempColumns); - rsort($columns); } else { $bounceRateRequested = $actionsPerVisitRequested = $averageVisitDurationRequested = true; $columns = array( 'nb_visits', - 'nb_uniq_visitors', 'nb_actions', 'nb_visits_converted', 'bounce_count', 'sum_visit_length', 'max_actions' ); - if(!Piwik::isUniqueVisitorsEnabled($period)) + if(Piwik::isUniqueVisitorsEnabled($period)) { - unset($columns[array_search('nb_uniq_visitors', $columns)]); + $columns = array_merge(array('nb_uniq_visitors'), $columns); } // Force reindex from 0 to N otherwise the SQL bind will fail $columns = array_values($columns); @@ -102,7 +100,7 @@ class Piwik_VisitsSummary_API { $dataTable->filter('ColumnCallbackAddColumnQuotient', array('avg_time_on_site', 'sum_visit_length', 'nb_visits', 0)); } - + // remove temp metrics that were used to compute processed metrics $dataTable->deleteColumns($tempColumns); |