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:
authormattab <matthieu.aubry@gmail.com>2013-06-07 06:37:20 +0400
committermattab <matthieu.aubry@gmail.com>2013-06-07 06:37:20 +0400
commite7267041b56679f3f95d0a1d35836eec37d0d85c (patch)
treed5e2c0ce9f935cfa2a010f3853f97156b7ca1bbb /plugins/UserSettings
parentb53839f7e40f584066c13f60e5b37542b3c10cad (diff)
factoring out record names as const
Diffstat (limited to 'plugins/UserSettings')
-rw-r--r--plugins/UserSettings/API.php63
-rw-r--r--plugins/UserSettings/Archiver.php9
2 files changed, 38 insertions, 34 deletions
diff --git a/plugins/UserSettings/API.php b/plugins/UserSettings/API.php
index dd3820fff7..4369d397b9 100644
--- a/plugins/UserSettings/API.php
+++ b/plugins/UserSettings/API.php
@@ -45,20 +45,20 @@ class Piwik_UserSettings_API
public function getResolution($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_resolution', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::RESOLUTION_RECORD_NAME, $idSite, $period, $date, $segment);
return $dataTable;
}
public function getConfiguration($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_configuration', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::CONFIGURATION_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->queueFilter('ColumnCallbackReplace', array('label', 'Piwik_getConfigurationLabel'));
return $dataTable;
}
public function getOS($idSite, $period, $date, $segment = false, $addShortLabel = true)
{
- $dataTable = $this->getDataTable('UserSettings_os', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::OS_RECORD_NAME, $idSite, $period, $date, $segment);
// these filters are applied directly so other API methods can use GroupBy on the result of this method
$dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', 'Piwik_getOSLogo'));
if ($addShortLabel) {
@@ -88,18 +88,29 @@ class Piwik_UserSettings_API
{
$dataTable = $this->getOS($idSite, $period, $date, $segment, $addShortLabel = false);
$dataTable->filter('GroupBy', array('label', 'Piwik_UserSettings_getDeviceTypeFromOS'));
+ $this->ensureDefaultRowsInTable($dataTable);
- // make sure the datatable has a row for mobile & desktop (if it has rows)
- $dataTables = array($dataTable);
- if ($dataTable instanceof Piwik_DataTable_Array) {
- $dataTables = $dataTable->getArray();
- }
+ // set the logo metadata
+ $dataTable->queueFilter('MetadataCallbackReplace',
+ array('logo', 'Piwik_UserSettings_getDeviceTypeImg', null, array('label')));
+
+ // translate the labels
+ $dataTable->queueFilter('ColumnCallbackReplace', array('label', 'Piwik_Translate'));
+ return $dataTable;
+ }
+
+ protected function ensureDefaultRowsInTable($dataTable)
+ {
$requiredRows = array(
'General_Desktop' => Piwik_Archive::INDEX_NB_VISITS,
'General_Mobile' => Piwik_Archive::INDEX_NB_VISITS
);
+ $dataTables = array($dataTable);
+ if ($dataTable instanceof Piwik_DataTable_Array) {
+ $dataTables = $dataTable->getArray();
+ }
foreach ($dataTables AS $table) {
if ($table->getRowsCount() == 0) {
continue;
@@ -113,22 +124,19 @@ class Piwik_UserSettings_API
}
}
}
+ }
- // set the logo metadata
- $dataTable->queueFilter('MetadataCallbackReplace',
- array('logo', 'Piwik_UserSettings_getDeviceTypeImg', null, array('label')));
-
- // translate the labels
- $dataTable->queueFilter('ColumnCallbackReplace', array('label', 'Piwik_Translate'));
-
+ public function getBrowserVersion($idSite, $period, $date, $segment = false)
+ {
+ $dataTable = $this->getBrowserTable($idSite, $period, $date, $segment);
+ $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'shortLabel', 'Piwik_getBrowserShortLabel'));
return $dataTable;
}
- public function getBrowserVersion($idSite, $period, $date, $segment = false)
+ protected function getBrowserTable($idSite, $period, $date, $segment)
{
- $dataTable = $this->getDataTable('UserSettings_browser', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::BROWSER_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', 'Piwik_getBrowsersLogo'));
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'shortLabel', 'Piwik_getBrowserShortLabel'));
$dataTable->filter('ColumnCallbackReplace', array('label', 'Piwik_getBrowserLabel'));
return $dataTable;
}
@@ -139,19 +147,14 @@ class Piwik_UserSettings_API
*/
public function getBrowser($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_browser', $idSite, $period, $date, $segment);
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', 'Piwik_getBrowsersLogo'));
- $dataTable->filter('ColumnCallbackReplace', array('label', 'Piwik_getBrowserLabel'));
-
- $getBrowserFromBrowserVersion = 'Piwik_UserSettings_getBrowserFromBrowserVersion';
- $dataTable->filter('GroupBy', array('label', $getBrowserFromBrowserVersion));
-
+ $dataTable = $this->getBrowserTable($idSite, $period, $date, $segment);
+ $dataTable->filter('GroupBy', array('label', 'Piwik_UserSettings_getBrowserFromBrowserVersion'));
return $dataTable;
}
public function getBrowserType($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_browserType', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::BROWSER_TYPE_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->queueFilter('ColumnCallbackAddMetadata', array('label', 'shortLabel', 'ucfirst'));
$dataTable->queueFilter('ColumnCallbackReplace', array('label', 'Piwik_getBrowserTypeLabel'));
return $dataTable;
@@ -159,7 +162,7 @@ class Piwik_UserSettings_API
public function getWideScreen($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_wideScreen', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::SCREEN_TYPE_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->queueFilter('ColumnCallbackAddMetadata', array('label', 'logo', 'Piwik_getScreensLogo'));
$dataTable->queueFilter('ColumnCallbackReplace', array('label', 'ucfirst'));
return $dataTable;
@@ -168,8 +171,8 @@ class Piwik_UserSettings_API
public function getPlugin($idSite, $period, $date, $segment = false)
{
// fetch all archive data required
- $dataTable = $this->getDataTable('UserSettings_plugin', $idSite, $period, $date, $segment);
- $browserTypes = $this->getDataTable('UserSettings_browserType', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::PLUGIN_RECORD_NAME, $idSite, $period, $date, $segment);
+ $browserTypes = $this->getDataTable(Piwik_UserSettings_Archiver::BROWSER_TYPE_RECORD_NAME, $idSite, $period, $date, $segment);
$archive = Piwik_Archive::build($idSite, $period, $date, $segment);
$visitsSums = $archive->getDataTableFromNumeric('nb_visits');
@@ -238,7 +241,7 @@ class Piwik_UserSettings_API
public function getLanguage($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getDataTable('UserSettings_language', $idSite, $period, $date, $segment);
+ $dataTable = $this->getDataTable(Piwik_UserSettings_Archiver::LANGUAGE_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->filter('ColumnCallbackReplace', array('label', 'Piwik_LanguageTranslate'));
$dataTable->filter('ReplaceColumnNames');
return $dataTable;
diff --git a/plugins/UserSettings/Archiver.php b/plugins/UserSettings/Archiver.php
index fa8721c6e7..0e545350b7 100644
--- a/plugins/UserSettings/Archiver.php
+++ b/plugins/UserSettings/Archiver.php
@@ -15,7 +15,7 @@ class Piwik_UserSettings_Archiver extends Piwik_PluginsArchiver
{
const LANGUAGE_RECORD_NAME = 'UserSettings_language';
const PLUGIN_RECORD_NAME = 'UserSettings_plugin';
- const SCREEN_TYPES_RECORD_NAME = 'UserSettings_wideScreen';
+ const SCREEN_TYPE_RECORD_NAME = 'UserSettings_wideScreen';
const RESOLUTION_RECORD_NAME = 'UserSettings_resolution';
const BROWSER_RECORD_NAME = 'UserSettings_browser';
const BROWSER_TYPE_RECORD_NAME = 'UserSettings_browserType';
@@ -94,7 +94,7 @@ class Piwik_UserSettings_Archiver extends Piwik_PluginsArchiver
protected function aggregateByScreenType(Piwik_DataTable $resolutions)
{
$resolutions->filter('GroupBy', array('label', 'Piwik_getScreenTypeFromResolution'));
- $this->getProcessor()->insertBlobRecord(self::SCREEN_TYPES_RECORD_NAME, $resolutions->getSerialized());
+ $this->getProcessor()->insertBlobRecord(self::SCREEN_TYPE_RECORD_NAME, $resolutions->getSerialized());
}
protected function aggregateByPlugin()
@@ -142,10 +142,11 @@ class Piwik_UserSettings_Archiver extends Piwik_PluginsArchiver
self::BROWSER_RECORD_NAME,
self::BROWSER_TYPE_RECORD_NAME,
self::RESOLUTION_RECORD_NAME,
- self::SCREEN_TYPES_RECORD_NAME,
+ self::SCREEN_TYPE_RECORD_NAME,
self::PLUGIN_RECORD_NAME,
self::LANGUAGE_RECORD_NAME,
);
$this->getProcessor()->archiveDataTable($dataTableToSum, null, $this->maximumRowsInDataTable);
}
-} \ No newline at end of file
+}
+