Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormattpiwik <matthieu.aubry@gmail.com>2011-04-11 04:55:30 +0400
committermattpiwik <matthieu.aubry@gmail.com>2011-04-11 04:55:30 +0400
commit33c5d9ffad7668c73fda5c4d7e940f652aa3e9ae (patch)
tree6e3ffb9403c89913cf45cfad2589331ca31cdfe4 /plugins
parent7288e5683e688338456bd89260d6d2cc380ec25e (diff)
Fixes #2291
git-svn-id: http://dev.piwik.org/svn/trunk@4392 59fd770c-687e-43c8-a1e3-f5a4ff64c105
Diffstat (limited to 'plugins')
-rw-r--r--plugins/API/API.php27
-rw-r--r--plugins/Actions/Actions.php4
-rw-r--r--plugins/CustomVariables/CustomVariables.php1
-rw-r--r--plugins/Goals/Goals.php2
-rw-r--r--plugins/Provider/Provider.php1
-rw-r--r--plugins/Referers/Referers.php7
-rw-r--r--plugins/UserCountry/UserCountry.php3
-rw-r--r--plugins/UserSettings/UserSettings.php15
-rw-r--r--plugins/VisitFrequency/VisitFrequency.php1
-rw-r--r--plugins/VisitTime/VisitTime.php2
-rw-r--r--plugins/VisitorInterest/VisitorInterest.php2
-rw-r--r--plugins/VisitsSummary/VisitsSummary.php1
12 files changed, 51 insertions, 15 deletions
diff --git a/plugins/API/API.php b/plugins/API/API.php
index c7f8829aca..bc58e2ac9e 100644
--- a/plugins/API/API.php
+++ b/plugins/API/API.php
@@ -253,6 +253,9 @@ class Piwik_API_API
// Some plugins need to add custom metrics after all plugins hooked in
Piwik_PostEvent('API.getReportMetadata.end', $availableReports, $idSites);
+ // Sort results to ensure consistent order
+ usort($availableReports, array($this, 'sort'));
+
$knownMetrics = array_merge( $this->getDefaultMetrics(), $this->getDefaultProcessedMetrics() );
foreach($availableReports as &$availableReport)
{
@@ -293,9 +296,11 @@ class Piwik_API_API
}
}
$availableReport['uniqueId'] = $uniqueId;
+
+ // Order is used to order reports internally, but not meant to be used outside
+ unset($availableReport['order']);
}
- // Sort results to ensure consistent order
- usort($availableReports, array($this, 'sort'));
+
return $availableReports;
}
@@ -509,15 +514,25 @@ class Piwik_API_API
}
/**
- * API metadata are sorted by category/name
+ * API metadata are sorted by category/name,
+ * with a little tweak to replicate the standard Piwik category ordering
+ *
* @param string $a
* @param string $b
* @return int
*/
private function sort($a, $b)
{
- return ($category = strcmp($a['category'], $b['category'])) != 0
- ? $category
- : strcmp($a['action'], $b['action']);
+ $order = array(
+ Piwik_Translate('VisitsSummary_VisitsSummary'),
+ Piwik_Translate('Actions_Actions'),
+ Piwik_Translate('Referers_Referers'),
+ Piwik_Translate('Goals_Goals'),
+ Piwik_Translate('General_Visitors'),
+ Piwik_Translate('UserSettings_VisitorSettings'),
+ );
+ return ($category = strcmp(array_search($a['category'], $order), array_search($b['category'], $order))) == 0
+ ? ($a['order'] < $b['order'] ? -1 : 1)
+ : $category;
}
}
diff --git a/plugins/Actions/Actions.php b/plugins/Actions/Actions.php
index 85ae6e77d2..1362b38488 100644
--- a/plugins/Actions/Actions.php
+++ b/plugins/Actions/Actions.php
@@ -129,6 +129,7 @@ class Piwik_Actions extends Piwik_Plugin
'dimension' => Piwik_Translate('Actions_ColumnPageURL'),
'metrics' => $metrics,
'processedMetrics' => false,
+ 'order' => 1,
);
$reports[] = array(
@@ -139,6 +140,7 @@ class Piwik_Actions extends Piwik_Plugin
'dimension' => Piwik_Translate('Actions_ColumnPageName'),
'metrics' => $metrics,
'processedMetrics' => false,
+ 'order' => 3,
);
// Outlinks and downloads only report basic metrics
@@ -153,6 +155,7 @@ class Piwik_Actions extends Piwik_Plugin
'dimension' => Piwik_Translate('Actions_ColumnClickedURL'),
'metrics' => $metrics,
'processedMetrics' => false,
+ 'order' => 5,
);
$reports[] = array(
'category' => Piwik_Translate('Actions_Actions'),
@@ -162,6 +165,7 @@ class Piwik_Actions extends Piwik_Plugin
'dimension' => Piwik_Translate('Actions_ColumnDownloadURL'),
'metrics' => $metrics,
'processedMetrics' => false,
+ 'order' => 7,
);
}
diff --git a/plugins/CustomVariables/CustomVariables.php b/plugins/CustomVariables/CustomVariables.php
index e7fd487510..389f5ce0ba 100644
--- a/plugins/CustomVariables/CustomVariables.php
+++ b/plugins/CustomVariables/CustomVariables.php
@@ -66,6 +66,7 @@ class Piwik_CustomVariables extends Piwik_Plugin
'module' => 'CustomVariables',
'action' => 'getCustomVariables',
'dimension' => Piwik_Translate('CustomVariables_ColumnCustomVariableName'),
+ 'order' => 10
),
));
}
diff --git a/plugins/Goals/Goals.php b/plugins/Goals/Goals.php
index 015b4f016a..abe93203bd 100644
--- a/plugins/Goals/Goals.php
+++ b/plugins/Goals/Goals.php
@@ -78,6 +78,7 @@ class Piwik_Goals extends Piwik_Plugin
'action' => 'get',
'metrics' => $goalMetrics,
'processedMetrics' => array(),
+ 'order' => 1
);
/*
@@ -119,6 +120,7 @@ class Piwik_Goals extends Piwik_Plugin
'parameters' => array('idGoal' => $goal['idgoal']),
'metrics' => $goalMetrics,
'processedMetrics' => false,
+ 'order' => 10 + $goal['idgoal']
);
}
}
diff --git a/plugins/Provider/Provider.php b/plugins/Provider/Provider.php
index c0434e1240..30b79b2a86 100644
--- a/plugins/Provider/Provider.php
+++ b/plugins/Provider/Provider.php
@@ -52,6 +52,7 @@ class Piwik_Provider extends Piwik_Plugin
'module' => 'Provider',
'action' => 'getProvider',
'dimension' => Piwik_Translate('Provider_ColumnProvider'),
+ 'order' => 50
);
}
diff --git a/plugins/Referers/Referers.php b/plugins/Referers/Referers.php
index 75323f60f4..1fc22a94eb 100644
--- a/plugins/Referers/Referers.php
+++ b/plugins/Referers/Referers.php
@@ -60,7 +60,8 @@ class Piwik_Referers extends Piwik_Plugin
'name' => Piwik_Translate('Referers_Type'),
'module' => 'Referers',
'action' => 'getRefererType',
- 'dimension' => Piwik_Translate('Referers_ColumnRefererType')
+ 'dimension' => Piwik_Translate('Referers_ColumnRefererType'),
+ 'order' => 1,
),
array(
'category' => Piwik_Translate('Referers_Referers'),
@@ -68,6 +69,7 @@ class Piwik_Referers extends Piwik_Plugin
'module' => 'Referers',
'action' => 'getKeywords',
'dimension' => Piwik_Translate('Referers_ColumnKeyword'),
+ 'order' => 3,
),
array(
'category' => Piwik_Translate('Referers_Referers'),
@@ -75,6 +77,7 @@ class Piwik_Referers extends Piwik_Plugin
'module' => 'Referers',
'action' => 'getWebsites',
'dimension' => Piwik_Translate('Referers_ColumnWebsite'),
+ 'order' => 5,
),
array(
'category' => Piwik_Translate('Referers_Referers'),
@@ -82,6 +85,7 @@ class Piwik_Referers extends Piwik_Plugin
'module' => 'Referers',
'action' => 'getSearchEngines',
'dimension' => Piwik_Translate('Referers_ColumnSearchEngine'),
+ 'order' => 7,
),
array(
'category' => Piwik_Translate('Referers_Referers'),
@@ -89,6 +93,7 @@ class Piwik_Referers extends Piwik_Plugin
'module' => 'Referers',
'action' => 'getCampaigns',
'dimension' => Piwik_Translate('Referers_ColumnCampaign'),
+ 'order' => 9,
),
));
}
diff --git a/plugins/UserCountry/UserCountry.php b/plugins/UserCountry/UserCountry.php
index db8d80a541..8e436b7fcf 100644
--- a/plugins/UserCountry/UserCountry.php
+++ b/plugins/UserCountry/UserCountry.php
@@ -83,7 +83,7 @@ class Piwik_UserCountry extends Piwik_Plugin
'module' => 'UserCountry',
'action' => 'getCountry',
'dimension' => Piwik_Translate('UserCountry_Country'),
- ''
+ 'order' => 5,
);
$reports[] = array(
@@ -92,6 +92,7 @@ class Piwik_UserCountry extends Piwik_Plugin
'module' => 'UserCountry',
'action' => 'getContinent',
'dimension' => Piwik_Translate('UserCountry_Continent'),
+ 'order' => 6,
);
}
diff --git a/plugins/UserSettings/UserSettings.php b/plugins/UserSettings/UserSettings.php
index 69e0578bf5..30977787b3 100644
--- a/plugins/UserSettings/UserSettings.php
+++ b/plugins/UserSettings/UserSettings.php
@@ -74,7 +74,12 @@ class Piwik_UserSettings extends Piwik_Plugin
'config_browser_version',
'1.0, 8.0, etc.',),
-
+ array( 'UserSettings_VisitorSettings',
+ 'UserSettings_WidgetBrowserFamilies',
+ 'UserSettings',
+ 'getBrowserType',
+ 'UserSettings_ColumnBrowserFamily'),
+
array( 'UserSettings_VisitorSettings',
'UserSettings_WidgetPlugins',
'UserSettings',
@@ -88,12 +93,6 @@ class Piwik_UserSettings extends Piwik_Plugin
'UserSettings_ColumnTypeOfScreen'),
array( 'UserSettings_VisitorSettings',
- 'UserSettings_WidgetBrowserFamilies',
- 'UserSettings',
- 'getBrowserType',
- 'UserSettings_ColumnBrowserFamily'),
-
- array( 'UserSettings_VisitorSettings',
'UserSettings_WidgetOperatingSystems',
'UserSettings',
'getOS',
@@ -134,6 +133,7 @@ class Piwik_UserSettings extends Piwik_Plugin
{
$reports = &$notification->getNotificationObject();
+ $i = 0;
foreach($this->reportMetadata as $report)
{
list( $category, $name, $apiModule, $apiAction, $columnName ) = $report;
@@ -145,6 +145,7 @@ class Piwik_UserSettings extends Piwik_Plugin
'module' => $apiModule,
'action' => $apiAction,
'dimension' => Piwik_Translate($columnName),
+ 'order' => $i++,
);
// getPlugin returns only a subset of metrics
diff --git a/plugins/VisitFrequency/VisitFrequency.php b/plugins/VisitFrequency/VisitFrequency.php
index 90626fae4e..f13cd62738 100644
--- a/plugins/VisitFrequency/VisitFrequency.php
+++ b/plugins/VisitFrequency/VisitFrequency.php
@@ -61,6 +61,7 @@ class Piwik_VisitFrequency extends Piwik_Plugin
// 'bounce_count_returning',
),
'processedMetrics' => false,
+ 'order' => 40
);
}
diff --git a/plugins/VisitTime/VisitTime.php b/plugins/VisitTime/VisitTime.php
index b65d060c8c..c47a03463d 100644
--- a/plugins/VisitTime/VisitTime.php
+++ b/plugins/VisitTime/VisitTime.php
@@ -50,6 +50,7 @@ class Piwik_VisitTime extends Piwik_Plugin
'module' => 'VisitTime',
'action' => 'getVisitInformationPerLocalTime',
'dimension' => Piwik_Translate('VisitTime_ColumnLocalTime'),
+ 'order' => 20
);
$reports[] = array(
@@ -58,6 +59,7 @@ class Piwik_VisitTime extends Piwik_Plugin
'module' => 'VisitTime',
'action' => 'getVisitInformationPerServerTime',
'dimension' => Piwik_Translate('VisitTime_ColumnServerTime'),
+ 'order' => 15,
);
}
diff --git a/plugins/VisitorInterest/VisitorInterest.php b/plugins/VisitorInterest/VisitorInterest.php
index 6e7484f656..84180533f2 100644
--- a/plugins/VisitorInterest/VisitorInterest.php
+++ b/plugins/VisitorInterest/VisitorInterest.php
@@ -51,6 +51,7 @@ class Piwik_VisitorInterest extends Piwik_Plugin
'dimension' => Piwik_Translate('VisitorInterest_ColumnVisitDuration'),
'metrics' => array( 'nb_visits' ),
'processedMetrics' => false,
+ 'order' => 15
);
$reports[] = array(
@@ -61,6 +62,7 @@ class Piwik_VisitorInterest extends Piwik_Plugin
'dimension' => Piwik_Translate('VisitorInterest_ColumnPagesPerVisit'),
'metrics' => array( 'nb_visits' ),
'processedMetrics' => false,
+ 'order' => 20
);
}
diff --git a/plugins/VisitsSummary/VisitsSummary.php b/plugins/VisitsSummary/VisitsSummary.php
index acbfd2d2e6..9b4cd8939d 100644
--- a/plugins/VisitsSummary/VisitsSummary.php
+++ b/plugins/VisitsSummary/VisitsSummary.php
@@ -61,6 +61,7 @@ class Piwik_VisitsSummary extends Piwik_Plugin
// 'nb_visits_converted',
),
'processedMetrics' => false,
+ 'order' => 1
);
}