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-08-02 17:59:33 +0400
committermattab <matthieu.aubry@gmail.com>2013-08-02 17:59:33 +0400
commita96ec40e983a8b64f4c25def541a519ff3670e6a (patch)
treebef2a5f7b1e9532dc96161334e23a553cdff7ea1 /plugins/Actions
parent61997f45e4c39360000e815c9e0853ae04e2f56f (diff)
Refs #4059 Converting dozens of plugins/* classes to use Namespaces, \Piwik\Plugins\*
Added namespaces to functions.php files in the five plugins that had one Work in progress
Diffstat (limited to 'plugins/Actions')
-rw-r--r--plugins/Actions/API.php38
-rw-r--r--plugins/Actions/Actions.php211
-rw-r--r--plugins/Actions/Archiver.php70
-rw-r--r--plugins/Actions/ArchivingHelper.php35
-rw-r--r--plugins/Actions/Controller.php25
5 files changed, 195 insertions, 184 deletions
diff --git a/plugins/Actions/API.php b/plugins/Actions/API.php
index 263e3e4a6b..1804ca4a07 100644
--- a/plugins/Actions/API.php
+++ b/plugins/Actions/API.php
@@ -6,15 +6,22 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
- * @package Piwik_Actions
+ * @package Actions
*/
+namespace Piwik\Plugins\Actions;
+
+use Exception;
use Piwik\Archive;
use Piwik\Metrics;
use Piwik\Piwik;
use Piwik\Common;
use Piwik\Date;
use Piwik\DataTable;
+use Piwik\Plugins\Actions\Actions;
use Piwik\Tracker\Action;
+use Piwik\Plugins\Actions\Archiver;
+use Piwik\Plugins\Actions\ArchivingHelper;
+use Piwik\Plugins\CustomVariables\API as CustomVariablesAPI;
/**
* The Actions API lets you request reports for all your Visitor Actions: Page URLs, Page titles (Piwik Events),
@@ -28,14 +35,14 @@ use Piwik\Tracker\Action;
* and an outlink via "getOutlink".
*
* Note: pageName, pageUrl, outlinkUrl, downloadUrl parameters must be URL encoded before you call the API.
- * @package Piwik_Actions
+ * @package Actions
*/
-class Piwik_Actions_API
+class API
{
static private $instance = null;
/**
- * @return Piwik_Actions_API
+ * @return \Piwik\Plugins\Actions\API
*/
static public function getInstance()
{
@@ -60,7 +67,7 @@ class Piwik_Actions_API
Piwik::checkUserHasViewAccess($idSite);
$archive = Archive::build($idSite, $period, $date, $segment);
- $metrics = Piwik_Actions_Archiver::$actionsAggregateMetrics;
+ $metrics = Archiver::$actionsAggregateMetrics;
$metrics['Actions_avg_time_generation'] = 'avg_time_generation';
// get requested columns
@@ -89,13 +96,13 @@ class Piwik_Actions_API
}
if ($avgGenerationTimeRequested) {
- $tempColumns[] = Piwik_Actions_Archiver::METRIC_SUM_TIME_RECORD_NAME;
- $tempColumns[] = Piwik_Actions_Archiver::METRIC_HITS_TIMED_RECORD_NAME;
+ $tempColumns[] = Archiver::METRIC_SUM_TIME_RECORD_NAME;
+ $tempColumns[] = Archiver::METRIC_HITS_TIMED_RECORD_NAME;
$columns = array_merge($columns, $tempColumns);
$columns = array_unique($columns);
- $nameReplace[Piwik_Actions_Archiver::METRIC_SUM_TIME_RECORD_NAME] = 'sum_time_generation';
- $nameReplace[Piwik_Actions_Archiver::METRIC_HITS_TIMED_RECORD_NAME] = 'nb_hits_with_time_generation';
+ $nameReplace[Archiver::METRIC_SUM_TIME_RECORD_NAME] = 'sum_time_generation';
+ $nameReplace[Archiver::METRIC_HITS_TIMED_RECORD_NAME] = 'nb_hits_with_time_generation';
}
$table = $archive->getDataTableFromNumeric($columns);
@@ -327,8 +334,8 @@ class Piwik_Actions_API
*/
public function getSiteSearchCategories($idSite, $period, $date, $segment = false)
{
- Piwik_Actions::checkCustomVariablesPluginEnabled();
- $customVariables = Piwik_CustomVariables_API::getInstance()->getCustomVariables($idSite, $period, $date, $segment, $expanded = false, $_leavePiwikCoreVariables = true);
+ Actions::checkCustomVariablesPluginEnabled();
+ $customVariables = CustomVariablesAPI::getInstance()->getCustomVariables($idSite, $period, $date, $segment, $expanded = false, $_leavePiwikCoreVariables = true);
$customVarNameToLookFor = Action::CVAR_KEY_SEARCH_CATEGORY;
@@ -347,7 +354,7 @@ class Piwik_Actions_API
if ($row) {
$dateRewrite = $customVariableTableForDate->metadata['period']->getDateStart()->toString();
$idSubtable = $row->getIdSubDataTable();
- $categories = Piwik_CustomVariables_API::getInstance()->getCustomVariablesValuesFromNameId($idSite, $period, $dateRewrite, $idSubtable, $segment);
+ $categories = CustomVariablesAPI::getInstance()->getCustomVariablesValuesFromNameId($idSite, $period, $dateRewrite, $idSubtable, $segment);
$dataTable->addTable($categories, $key);
}
}
@@ -356,7 +363,7 @@ class Piwik_Actions_API
$row = $customVariables->getRowFromLabel($customVarNameToLookFor);
if ($row) {
$idSubtable = $row->getIdSubDataTable();
- $dataTable = Piwik_CustomVariables_API::getInstance()->getCustomVariablesValuesFromNameId($idSite, $period, $date, $idSubtable, $segment);
+ $dataTable = CustomVariablesAPI::getInstance()->getCustomVariablesValuesFromNameId($idSite, $period, $date, $idSubtable, $segment);
}
}
$this->filterActionsDataTable($dataTable);
@@ -383,8 +390,8 @@ class Piwik_Actions_API
$searchedString = $search;
}
}
- Piwik_Actions_ArchivingHelper::reloadConfig();
- $searchTree = Piwik_Actions_ArchivingHelper::getActionExplodedNames($searchedString, $actionType);
+ ArchivingHelper::reloadConfig();
+ $searchTree = ArchivingHelper::getActionExplodedNames($searchedString, $actionType);
}
if ($table === false) {
@@ -405,7 +412,6 @@ class Piwik_Actions_API
return $newTableArray;
}
-
}
return $this->doFilterPageDatatableSearch($callBackParameters, $table, $searchTree);
diff --git a/plugins/Actions/Actions.php b/plugins/Actions/Actions.php
index fdd116c671..665e0511f1 100644
--- a/plugins/Actions/Actions.php
+++ b/plugins/Actions/Actions.php
@@ -6,8 +6,10 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
- * @package Piwik_Actions
+ * @package Actions
*/
+namespace Piwik\Plugins\Actions;
+
use Piwik\API\Request;
use Piwik\ArchiveProcessor;
use Piwik\Piwik;
@@ -15,7 +17,6 @@ use Piwik\Common;
use Piwik\Tracker\Action;
use Piwik\ViewDataTable;
use Piwik\WidgetsList;
-use Piwik\Plugin;
use Piwik\SegmentExpression;
use Piwik\Db;
use Piwik\Site;
@@ -25,18 +26,18 @@ use Piwik\Site;
*
* Reports about the page views, the outlinks and downloads.
*
- * @package Piwik_Actions
+ * @package Actions
*/
-class Piwik_Actions extends Plugin
+class Actions extends \Piwik\Plugin
{
const ACTIONS_REPORT_ROWS_DISPLAY = 100;
-
+
private $columnTranslations;
-
+
public function __construct()
{
parent::__construct();
-
+
$this->columnTranslations = array(
'nb_hits' => Piwik_Translate('General_ColumnPageviews'),
'nb_visits' => Piwik_Translate('General_ColumnUniquePageviews'),
@@ -63,7 +64,7 @@ class Piwik_Actions extends Plugin
);
return $hooks;
}
-
+
public function getSegmentsMetadata(&$segments)
{
$sqlFilter = array($this, 'getIdActionFromSegment');
@@ -211,7 +212,7 @@ class Piwik_Actions extends Plugin
'nb_uniq_outlinks' => Piwik_Translate('Actions_ColumnUniqueOutlinks'),
'nb_searches' => Piwik_Translate('Actions_ColumnSearches'),
'nb_keywords' => Piwik_Translate('Actions_ColumnSiteSearchKeywords'),
- 'avg_time_generation' => Piwik_Translate('General_ColumnAverageGenerationTime'),
+ 'avg_time_generation' => Piwik_Translate('General_ColumnAverageGenerationTime'),
),
'metricsDocumentation' => array(
'nb_pageviews' => Piwik_Translate('General_ColumnPageviewsDocumentation'),
@@ -221,7 +222,7 @@ class Piwik_Actions extends Plugin
'nb_outlinks' => Piwik_Translate('Actions_ColumnClicksDocumentation'),
'nb_uniq_outlinks' => Piwik_Translate('Actions_ColumnUniqueClicksDocumentation'),
'nb_searches' => Piwik_Translate('Actions_ColumnSearchesDocumentation'),
- 'avg_time_generation' => Piwik_Translate('General_ColumnAverageGenerationTimeDocumentation'),
+ 'avg_time_generation' => Piwik_Translate('General_ColumnAverageGenerationTimeDocumentation'),
// 'nb_keywords' => Piwik_Translate('Actions_ColumnSiteSearchKeywords'),
),
'processedMetrics' => false,
@@ -581,16 +582,16 @@ class Piwik_Actions extends Plugin
*/
public function archiveDay(ArchiveProcessor\Day $archiveProcessor)
{
- $archiving = new Piwik_Actions_Archiver($archiveProcessor);
- if($archiving->shouldArchive()) {
+ $archiving = new Archiver($archiveProcessor);
+ if ($archiving->shouldArchive()) {
$archiving->archiveDay();
}
}
function archivePeriod(ArchiveProcessor\Period $archiveProcessor)
{
- $archiving = new Piwik_Actions_Archiver($archiveProcessor);
- if($archiving->shouldArchive()) {
+ $archiving = new Archiver($archiveProcessor);
+ if ($archiving->shouldArchive()) {
$archiving->archivePeriod();
}
}
@@ -631,20 +632,20 @@ class Piwik_Actions extends Plugin
public function getReportDisplayProperties(&$properties)
{
$properties['Actions.getPageUrls'] = $this->getDisplayPropertiesForPageUrls();
- $properties['Actions.getEntryPageUrls'] = $this->getDisplayPropertiesForEntryPageUrls();
- $properties['Actions.getExitPageUrls'] = $this->getDisplayPropertiesForExitPageUrls();
- $properties['Actions.getSiteSearchKeywords'] = $this->getDisplayPropertiesForSiteSearchKeywords();
- $properties['Actions.getSiteSearchNoResultKeywords'] = $this->getDisplayPropertiesForSiteSearchNoResultKeywords();
- $properties['Actions.getSiteSearchCategories'] = $this->getDisplayPropertiesForSiteSearchCategories();
- $properties['Actions.getPageUrlsFollowingSiteSearch'] = $this->getDisplayPropertiesForGetPageUrlsOrTitlesFollowingSiteSearch(false);
- $properties['Actions.getPageTitlesFollowingSiteSearch'] = $this->getDisplayPropertiesForGetPageUrlsOrTitlesFollowingSiteSearch(true);
- $properties['Actions.getPageTitles'] = $this->getDisplayPropertiesForGetPageTitles();
- $properties['Actions.getEntryPageTitles'] = $this->getDisplayPropertiesForGetEntryPageTitles();
- $properties['Actions.getExitPageTitles'] = $this->getDisplayPropertiesForGetExitPageTitles();
- $properties['Actions.getDownloads'] = $this->getDisplayPropertiesForGetDownloads();
- $properties['Actions.getOutlinks'] = $this->getDisplayPropertiesForGetOutlinks();
+ $properties['Actions.getEntryPageUrls'] = $this->getDisplayPropertiesForEntryPageUrls();
+ $properties['Actions.getExitPageUrls'] = $this->getDisplayPropertiesForExitPageUrls();
+ $properties['Actions.getSiteSearchKeywords'] = $this->getDisplayPropertiesForSiteSearchKeywords();
+ $properties['Actions.getSiteSearchNoResultKeywords'] = $this->getDisplayPropertiesForSiteSearchNoResultKeywords();
+ $properties['Actions.getSiteSearchCategories'] = $this->getDisplayPropertiesForSiteSearchCategories();
+ $properties['Actions.getPageUrlsFollowingSiteSearch'] = $this->getDisplayPropertiesForGetPageUrlsOrTitlesFollowingSiteSearch(false);
+ $properties['Actions.getPageTitlesFollowingSiteSearch'] = $this->getDisplayPropertiesForGetPageUrlsOrTitlesFollowingSiteSearch(true);
+ $properties['Actions.getPageTitles'] = $this->getDisplayPropertiesForGetPageTitles();
+ $properties['Actions.getEntryPageTitles'] = $this->getDisplayPropertiesForGetEntryPageTitles();
+ $properties['Actions.getExitPageTitles'] = $this->getDisplayPropertiesForGetExitPageTitles();
+ $properties['Actions.getDownloads'] = $this->getDisplayPropertiesForGetDownloads();
+ $properties['Actions.getOutlinks'] = $this->getDisplayPropertiesForGetOutlinks();
}
-
+
private function addBaseDisplayProperties(&$result)
{
$result['datatable_css_class'] = 'dataTableActions';
@@ -654,34 +655,34 @@ class Piwik_Actions extends Plugin
$result['show_all_views_icons'] = false;
$result['show_table_all_columns'] = false;
$result['filter_limit'] = self::ACTIONS_REPORT_ROWS_DISPLAY;
-
+
// if the flat parameter is not provided, make sure it is set to 0 in the URL,
// so users can see that they can set it to 1 (see #3365)
$result['custom_parameters'] = array('flat' => 0);
-
+
if (ViewDataTable::shouldLoadExpanded()) {
$result['show_expanded'] = true;
-
+
$result['filters'][] = function ($dataTable) {
- Piwik_Actions::setDataTableRowLevels($dataTable);
+ Actions::setDataTableRowLevels($dataTable);
};
}
-
+
return $result;
}
-
+
public static function setDataTableRowLevels($dataTable, $level = 0)
{
foreach ($dataTable->getRows() as $row) {
- $row->setMetadata('css_class', 'level'.$level);
-
+ $row->setMetadata('css_class', 'level' . $level);
+
$subtable = $row->getSubtable();
if ($subtable) {
self::setDataTableRowLevels($subtable, $level + 1);
}
}
}
-
+
private function addExcludeLowPopDisplayProperties(&$result)
{
if (Common::getRequestVar('enable_filter_excludelowpop', '0', 'string') != '0') {
@@ -691,60 +692,60 @@ class Piwik_Actions extends Plugin
$visitsInfo = Piwik_VisitsSummary_Controller::getVisitsSummary()->getFirstRow();
$nbActions = $visitsInfo->getColumn('nb_actions');
$nbActionsLowPopulationThreshold = floor(0.02 * $nbActions);
-
+
// we remove 1 to make sure some actions/downloads are displayed in the case we have a very few of them
// and each of them has 1 or 2 hits...
return min($visitsInfo->getColumn('max_actions') - 1, $nbActionsLowPopulationThreshold - 1);
};
}
}
-
+
private function addPageDisplayProperties(&$result)
{
// add common translations
$result['translations'] += array(
- 'nb_hits' => Piwik_Translate('General_ColumnPageviews'),
- 'nb_visits' => Piwik_Translate('General_ColumnUniquePageviews'),
- 'avg_time_on_page' => Piwik_Translate('General_ColumnAverageTimeOnPage'),
- 'bounce_rate' => Piwik_Translate('General_ColumnBounceRate'),
- 'exit_rate' => Piwik_Translate('General_ColumnExitRate'),
+ 'nb_hits' => Piwik_Translate('General_ColumnPageviews'),
+ 'nb_visits' => Piwik_Translate('General_ColumnUniquePageviews'),
+ 'avg_time_on_page' => Piwik_Translate('General_ColumnAverageTimeOnPage'),
+ 'bounce_rate' => Piwik_Translate('General_ColumnBounceRate'),
+ 'exit_rate' => Piwik_Translate('General_ColumnExitRate'),
'avg_time_generation' => Piwik_Translate('General_ColumnAverageGenerationTime'),
);
-
+
// prettify avg_time_on_page column
$getPrettyTimeFromSeconds = '\Piwik\Piwik::getPrettyTimeFromSeconds';
$result['filters'][] = array('ColumnCallbackReplace', array('avg_time_on_page', $getPrettyTimeFromSeconds));
-
+
// prettify avg_time_generation column
$avgTimeCallback = function ($time) {
return $time ? Piwik::getPrettyTimeFromSeconds($time, true, true, false) : "-";
};
$result['filters'][] = array('ColumnCallbackReplace', array('avg_time_generation', $avgTimeCallback));
-
+
// add avg_generation_time tooltip
$tooltipCallback = function ($hits, $min, $max) {
if (!$hits) {
return false;
}
-
+
return Piwik_Translate("Actions_AvgGenerationTimeTooltip", array(
- $hits,
- "<br />",
- Piwik::getPrettyTimeFromSeconds($min),
- Piwik::getPrettyTimeFromSeconds($max)
- ));
+ $hits,
+ "<br />",
+ Piwik::getPrettyTimeFromSeconds($min),
+ Piwik::getPrettyTimeFromSeconds($max)
+ ));
};
$result['filters'][] = array('ColumnCallbackAddMetadata',
- array(
- array('nb_hits_with_time_generation', 'min_time_generation', 'max_time_generation'),
- 'avg_time_generation_tooltip',
- $tooltipCallback
- )
+ array(
+ array('nb_hits_with_time_generation', 'min_time_generation', 'max_time_generation'),
+ 'avg_time_generation_tooltip',
+ $tooltipCallback
+ )
);
-
+
$this->addExcludeLowPopDisplayProperties($result);
}
-
+
public function getDisplayPropertiesForPageUrls()
{
$result = array(
@@ -752,26 +753,26 @@ class Piwik_Actions extends Plugin
'columns_to_display' => array('label', 'nb_hits', 'nb_visits', 'bounce_rate',
'avg_time_on_page', 'exit_rate', 'avg_time_generation'),
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
-
+
public function getDisplayPropertiesForEntryPageUrls()
{
// link to the page, not just the report, but only if not a widget
$widget = Common::getRequestVar('widget', false);
$reportUrl = Request::getCurrentUrlWithoutGenericFilters(array(
- 'module' => 'Actions',
- 'action' => $widget === false ? 'indexEntryPageUrls' : 'getEntryPageUrls'
- ));
-
+ 'module' => 'Actions',
+ 'action' => $widget === false ? 'indexEntryPageUrls' : 'getEntryPageUrls'
+ ));
+
$result = array(
- 'translations' => array('label' => Piwik_Translate('Actions_ColumnEntryPageURL'),
+ 'translations' => array('label' => Piwik_Translate('Actions_ColumnEntryPageURL'),
'entry_bounce_count' => Piwik_Translate('General_ColumnBounces'),
- 'entry_nb_visits' => Piwik_Translate('General_ColumnEntrances')),
+ 'entry_nb_visits' => Piwik_Translate('General_ColumnEntrances')),
'columns_to_display' => array('label', 'entry_nb_visits', 'entry_bounce_count', 'bounce_rate'),
'filter_sort_column' => 'entry_nb_visits',
'filter_sort_order' => 'desc',
@@ -781,24 +782,24 @@ class Piwik_Actions extends Plugin
),
'self_url' => $reportUrl
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
-
+
public function getDisplayPropertiesForExitPageUrls()
{
// link to the page, not just the report, but only if not a widget
$widget = Common::getRequestVar('widget', false);
$reportUrl = Request::getCurrentUrlWithoutGenericFilters(array(
- 'module' => 'Actions',
- 'action' => $widget === false ? 'indexExitPageUrls' : 'getExitPageUrls'
- ));
-
+ 'module' => 'Actions',
+ 'action' => $widget === false ? 'indexExitPageUrls' : 'getExitPageUrls'
+ ));
+
$result = array(
- 'translations' => array('label' => Piwik_Translate('Actions_ColumnExitPageURL'),
+ 'translations' => array('label' => Piwik_Translate('Actions_ColumnExitPageURL'),
'exit_nb_visits' => Piwik_Translate('General_ColumnExits')),
'columns_to_display' => array('label', 'exit_nb_visits', 'nb_visits', 'exit_rate'),
'filter_sort_column' => 'exit_nb_visits',
@@ -809,13 +810,13 @@ class Piwik_Actions extends Plugin
),
'self_url' => $reportUrl,
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
-
+
private function addSiteSearchDisplayProperties(&$result)
{
$result['translations'] += array(
@@ -826,16 +827,16 @@ class Piwik_Actions extends Plugin
$result['show_bar_chart'] = false;
$result['show_table_all_columns'] = false;
}
-
+
public function getDisplayPropertiesForSiteSearchKeywords()
{
$result = array(
'translations' => array('label' => Piwik_Translate('Actions_ColumnSearchKeyword')),
'columns_to_display' => array('label', 'nb_visits', 'nb_pages_per_search', 'exit_rate'),
);
-
+
$this->addSiteSearchDisplayProperties($result);
-
+
return $result;
}
@@ -845,9 +846,9 @@ class Piwik_Actions extends Plugin
'translations' => array('label', Piwik_Translate('Actions_ColumnNoResultKeyword')),
'columns_to_display' => array('label', 'nb_visits', 'exit_rate')
);
-
+
$this->addSiteSearchDisplayProperties($result);
-
+
return $result;
}
@@ -870,12 +871,12 @@ class Piwik_Actions extends Plugin
{
$title = $isTitle ? Piwik_Translate('Actions_WidgetPageTitlesFollowingSearch')
: Piwik_Translate('Actions_WidgetPageUrlsFollowingSearch');
-
+
$relatedReports = array(
'Actions.getPageTitlesFollowingSiteSearch' => Piwik_Translate('Actions_WidgetPageTitlesFollowingSearch'),
- 'Actions.getPageUrlsFollowingSiteSearch' => Piwik_Translate('Actions_WidgetPageUrlsFollowingSearch'),
+ 'Actions.getPageUrlsFollowingSiteSearch' => Piwik_Translate('Actions_WidgetPageUrlsFollowingSearch'),
);
-
+
$result = array(
'translations' => array(
'label' => Piwik_Translate('General_ColumnDestinationPage'),
@@ -889,10 +890,10 @@ class Piwik_Actions extends Plugin
'title' => $title,
'relatedReports' => $relatedReports
);
-
+
$this->addExcludeLowPopDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
@@ -901,10 +902,10 @@ class Piwik_Actions extends Plugin
// link to the page, not just the report, but only if not a widget
$widget = Common::getRequestVar('widget', false);
$reportUrl = Request::getCurrentUrlWithoutGenericFilters(array(
- 'module' => 'Actions',
- 'action' => $widget === false ? 'indexPageTitles' : 'getPageTitles'
- ));
-
+ 'module' => 'Actions',
+ 'action' => $widget === false ? 'indexPageTitles' : 'getPageTitles'
+ ));
+
$result = array(
'translations' => array('label' => Piwik_Translate('Actions_ColumnPageName')),
'columns_to_display' => array('label', 'nb_hits', 'nb_visits', 'bounce_rate',
@@ -916,10 +917,10 @@ class Piwik_Actions extends Plugin
),
'self_url' => $reportUrl
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
@@ -927,7 +928,7 @@ class Piwik_Actions extends Plugin
{
$entryPageUrlAction =
Common::getRequestVar('widget', false) === false ? 'indexEntryPageUrls' : 'getEntryPageUrls';
-
+
$result = array(
'translations' => array(
'label' => Piwik_Translate('Actions_ColumnEntryPageTitle'),
@@ -941,10 +942,10 @@ class Piwik_Actions extends Plugin
"Actions.$entryPageUrlAction" => Piwik_Translate('Actions_SubmenuPagesEntry')
),
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
@@ -952,7 +953,7 @@ class Piwik_Actions extends Plugin
{
$exitPageUrlAction =
Common::getRequestVar('widget', false) === false ? 'indexExitPageUrls' : 'getExitPageUrls';
-
+
$result = array(
'translations' => array(
'label' => Piwik_Translate('Actions_ColumnExitPageTitle'),
@@ -965,10 +966,10 @@ class Piwik_Actions extends Plugin
"Actions.$exitPageUrlAction" => Piwik_Translate('Actions_SubmenuPagesExit'),
),
);
-
+
$this->addPageDisplayProperties($result);
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
@@ -983,9 +984,9 @@ class Piwik_Actions extends Plugin
'columns_to_display' => array('label', 'nb_visits', 'nb_hits'),
'show_exclude_low_population' => false
);
-
+
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
@@ -1000,9 +1001,9 @@ class Piwik_Actions extends Plugin
'columns_to_display' => array('label', 'nb_visits', 'nb_hits'),
'show_exclude_low_population' => false
);
-
+
$this->addBaseDisplayProperties($result);
-
+
return $result;
}
}
diff --git a/plugins/Actions/Archiver.php b/plugins/Actions/Archiver.php
index f3dfa31138..c177a73ffe 100644
--- a/plugins/Actions/Archiver.php
+++ b/plugins/Actions/Archiver.php
@@ -6,8 +6,10 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
- * @package Piwik_Actions
+ * @package Actions
*/
+namespace Piwik\Plugins\Actions;
+
use Piwik\Config;
use Piwik\DataTable\Manager;
use Piwik\DataTable\Row\DataTableSummaryRow;
@@ -16,13 +18,14 @@ use Piwik\DataTable;
use Piwik\RankingQuery;
use Piwik\PluginsArchiver;
use Piwik\Tracker\Action;
+use Piwik\Plugins\Actions\ArchivingHelper;
/**
* Class encapsulating logic to process Day/Period Archiving for the Actions reports
*
- * @package Piwik_Actions
+ * @package Actions
*/
-class Piwik_Actions_Archiver extends PluginsArchiver
+class Archiver extends PluginsArchiver
{
const DOWNLOADS_RECORD_NAME = 'Actions_downloads';
const OUTLINKS_RECORD_NAME = 'Actions_outlink';
@@ -42,15 +45,15 @@ class Piwik_Actions_Archiver extends PluginsArchiver
const METRIC_KEYWORDS_RECORD_NAME = 'Actions_nb_keywords';
/* Metrics in use by the API Actions.get */
- public static $actionsAggregateMetrics = array(
- self::METRIC_PAGEVIEWS_RECORD_NAME => 'nb_pageviews',
- self::METRIC_UNIQ_PAGEVIEWS_RECORD_NAME => 'nb_uniq_pageviews',
- self::METRIC_DOWNLOADS_RECORD_NAME => 'nb_downloads',
- self::METRIC_UNIQ_DOWNLOADS_RECORD_NAME => 'nb_uniq_downloads',
- self::METRIC_OUTLINKS_RECORD_NAME => 'nb_outlinks',
- self::METRIC_UNIQ_OUTLINKS_RECORD_NAME => 'nb_uniq_outlinks',
- self::METRIC_SEARCHES_RECORD_NAME => 'nb_searches',
- self::METRIC_KEYWORDS_RECORD_NAME => 'nb_keywords',
+ public static $actionsAggregateMetrics = array(
+ self::METRIC_PAGEVIEWS_RECORD_NAME => 'nb_pageviews',
+ self::METRIC_UNIQ_PAGEVIEWS_RECORD_NAME => 'nb_uniq_pageviews',
+ self::METRIC_DOWNLOADS_RECORD_NAME => 'nb_downloads',
+ self::METRIC_UNIQ_DOWNLOADS_RECORD_NAME => 'nb_uniq_downloads',
+ self::METRIC_OUTLINKS_RECORD_NAME => 'nb_outlinks',
+ self::METRIC_UNIQ_OUTLINKS_RECORD_NAME => 'nb_uniq_outlinks',
+ self::METRIC_SEARCHES_RECORD_NAME => 'nb_searches',
+ self::METRIC_KEYWORDS_RECORD_NAME => 'nb_keywords',
);
public static $actionTypes = array(
@@ -93,24 +96,24 @@ class Piwik_Actions_Archiver extends PluginsArchiver
$rankingQueryLimit = self::getRankingQueryLimit();
// FIXME: This is a quick fix for #3482. The actual cause of the bug is that
- // the site search & performance metrics additions to
- // Piwik_Actions_ArchivingHelper::updateActionsTableWithRowQuery expect every
+ // the site search & performance metrics additions to
+ // ArchivingHelper::updateActionsTableWithRowQuery expect every
// row to have 'type' data, but not all of the SQL queries that are run w/o
// ranking query join on the log_action table and thus do not select the
// log_action.type column.
- //
+ //
// NOTES: Archiving logic can be generalized as follows:
// 0) Do SQL query over log_link_visit_action & join on log_action to select
// some metrics (like visits, hits, etc.)
// 1) For each row, cache the action row & metrics. (This is done by
- // updateActionsTableWithRowQuery for result set rows that have
+ // updateActionsTableWithRowQuery for result set rows that have
// name & type columns.)
// 2) Do other SQL queries for metrics we can't put in the first query (like
// entry visits, exit vists, etc.) w/o joining log_action.
// 3) For each row, find the cached row by idaction & add the new metrics to
// it. (This is done by updateActionsTableWithRowQuery for result set rows
// that DO NOT have name & type columns.)
- //
+ //
// The site search & performance metrics additions expect a 'type' all the time
// which breaks the original pre-rankingquery logic. Ranking query requires a
// join, so the bug is only seen when ranking query is disabled.
@@ -118,7 +121,7 @@ class Piwik_Actions_Archiver extends PluginsArchiver
$rankingQueryLimit = 100000;
}
- Piwik_Actions_ArchivingHelper::reloadConfig();
+ ArchivingHelper::reloadConfig();
$this->initActionsTables();
$this->archiveDayActions($rankingQueryLimit);
@@ -159,7 +162,7 @@ class Piwik_Actions_Archiver extends PluginsArchiver
$this->actionsTablesByType = array();
foreach (self::$actionTypes as $type) {
$dataTable = new DataTable();
- $dataTable->setMaximumAllowedRows(Piwik_Actions_ArchivingHelper::$maximumRowsInDataTableLevelZero);
+ $dataTable->setMaximumAllowedRows(ArchivingHelper::$maximumRowsInDataTableLevelZero);
if ($type == Action::TYPE_ACTION_URL
|| $type == Action::TYPE_ACTION_NAME
@@ -271,7 +274,6 @@ class Piwik_Actions_Archiver extends PluginsArchiver
// to the outer select. therefore, $segment needs to know about it.
$select = sprintf($select, $sprintfField);
-
// get query with segmentation
$query = $this->getLogAggregator()->generateQuery($select, $from, $where, $groupBy, $orderBy);
@@ -285,7 +287,7 @@ class Piwik_Actions_Archiver extends PluginsArchiver
// get result
$resultSet = $this->getLogAggregator()->getDb()->query($querySql, $query['bind']);
- $modified = Piwik_Actions_ArchivingHelper::updateActionsTableWithRowQuery($resultSet, $sprintfField, $this->actionsTablesByType);
+ $modified = ArchivingHelper::updateActionsTableWithRowQuery($resultSet, $sprintfField, $this->actionsTablesByType);
return $modified;
}
@@ -435,7 +437,7 @@ class Piwik_Actions_Archiver extends PluginsArchiver
*/
protected function recordDayReports()
{
- Piwik_Actions_ArchivingHelper::clearActionsCache();
+ ArchivingHelper::clearActionsCache();
$this->recordPageUrlsReports();
$this->recordDownloadsReports();
@@ -450,12 +452,12 @@ class Piwik_Actions_Archiver extends PluginsArchiver
$this->recordDataTable($dataTable, self::PAGE_URLS_RECORD_NAME);
$records = array(
- self::METRIC_PAGEVIEWS_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_NB_HITS)),
+ self::METRIC_PAGEVIEWS_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_NB_HITS)),
self::METRIC_UNIQ_PAGEVIEWS_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_NB_VISITS)),
- self::METRIC_SUM_TIME_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_SUM_TIME_GENERATION)),
- self::METRIC_HITS_TIMED_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_NB_HITS_WITH_TIME_GENERATION))
+ self::METRIC_SUM_TIME_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_SUM_TIME_GENERATION)),
+ self::METRIC_HITS_TIMED_RECORD_NAME => array_sum($dataTable->getColumn(Metrics::INDEX_PAGE_NB_HITS_WITH_TIME_GENERATION))
);
- $this->getProcessor()->insertNumericRecords( $records );
+ $this->getProcessor()->insertNumericRecords($records);
}
/**
@@ -470,7 +472,7 @@ class Piwik_Actions_Archiver extends PluginsArchiver
protected function recordDataTable($dataTable, $recordName)
{
self::deleteInvalidSummedColumnsFromDataTable($dataTable);
- $s = $dataTable->getSerialized(Piwik_Actions_ArchivingHelper::$maximumRowsInDataTableLevelZero, Piwik_Actions_ArchivingHelper::$maximumRowsInSubDataTable, Piwik_Actions_ArchivingHelper::$columnToSortByBeforeTruncation);
+ $s = $dataTable->getSerialized(ArchivingHelper::$maximumRowsInDataTableLevelZero, ArchivingHelper::$maximumRowsInSubDataTable, ArchivingHelper::$columnToSortByBeforeTruncation);
$this->getProcessor()->insertBlobRecord($recordName, $s);
}
@@ -566,15 +568,15 @@ class Piwik_Actions_Archiver extends PluginsArchiver
public function archivePeriod()
{
- Piwik_Actions_ArchivingHelper::reloadConfig();
+ ArchivingHelper::reloadConfig();
$dataTableToSum = array(
self::PAGE_TITLES_RECORD_NAME,
self::PAGE_URLS_RECORD_NAME,
);
$this->getProcessor()->aggregateDataTableReports($dataTableToSum,
- Piwik_Actions_ArchivingHelper::$maximumRowsInDataTableLevelZero,
- Piwik_Actions_ArchivingHelper::$maximumRowsInSubDataTable,
- Piwik_Actions_ArchivingHelper::$columnToSortByBeforeTruncation,
+ ArchivingHelper::$maximumRowsInDataTableLevelZero,
+ ArchivingHelper::$maximumRowsInSubDataTable,
+ ArchivingHelper::$columnToSortByBeforeTruncation,
self::$actionColumnAggregationOperations,
self::$invalidSummedColumnNameToRenamedNameFromPeriodArchive
);
@@ -586,9 +588,9 @@ class Piwik_Actions_Archiver extends PluginsArchiver
);
$aggregation = null;
$nameToCount = $this->getProcessor()->aggregateDataTableReports($dataTableToSum,
- Piwik_Actions_ArchivingHelper::$maximumRowsInDataTableLevelZero,
- Piwik_Actions_ArchivingHelper::$maximumRowsInSubDataTable,
- Piwik_Actions_ArchivingHelper::$columnToSortByBeforeTruncation,
+ ArchivingHelper::$maximumRowsInDataTableLevelZero,
+ ArchivingHelper::$maximumRowsInSubDataTable,
+ ArchivingHelper::$columnToSortByBeforeTruncation,
$aggregation,
self::$invalidSummedColumnNameToRenamedNameFromPeriodArchive
);
diff --git a/plugins/Actions/ArchivingHelper.php b/plugins/Actions/ArchivingHelper.php
index 8c95ae629f..e66cf73a97 100644
--- a/plugins/Actions/ArchivingHelper.php
+++ b/plugins/Actions/ArchivingHelper.php
@@ -6,29 +6,33 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
- * @package Piwik_Actions
+ * @package Actions
*/
+namespace Piwik\Plugins\Actions;
+
+use PDOStatement;
use Piwik\Config;
use Piwik\DataTable\Row;
use Piwik\Metrics;
use Piwik\DataTable;
use Piwik\Tracker\Action;
+use Zend_Db_Statement;
/**
* This static class provides:
* - logic to parse/cleanup Action names,
* - logic to efficiently process aggregate the array data during Archiving
*
- * @package Piwik_Actions
+ * @package Actions
*/
-class Piwik_Actions_ArchivingHelper
+class ArchivingHelper
{
const OTHERS_ROW_KEY = '';
/**
- * FIXME See FIXME related to this function at Piwik_Actions_Archiver::archiveDay.
- *
+ * FIXME See FIXME related to this function at Archiver::archiveDay.
+ *
* @param Zend_Db_Statement|PDOStatement $query
* @param string|bool $fieldQueried
* @param array $actionsTablesByType
@@ -91,7 +95,6 @@ class Piwik_Actions_ArchivingHelper
}
}
-
if (is_null($actionRow)) {
continue;
}
@@ -226,7 +229,6 @@ class Piwik_Actions_ArchivingHelper
DataTable::setMaximumDepthLevelAllowedAtLeast(self::getSubCategoryLevelLimit() + 1);
}
-
/**
* The default row is used when archiving, if data is inconsistent in the DB,
* there could be pages that have exit/entry hits, but don't yet
@@ -242,11 +244,11 @@ class Piwik_Actions_ArchivingHelper
// but this action was not properly recorded when it was hit in the first place
// so we add this fake row information to make sure there is a nb_hits, etc. column for every action
$row = new Row(array(
- Row::COLUMNS => array(
- Metrics::INDEX_NB_VISITS => 1,
- Metrics::INDEX_NB_UNIQ_VISITORS => 1,
- Metrics::INDEX_PAGE_NB_HITS => 1,
- )));
+ Row::COLUMNS => array(
+ Metrics::INDEX_NB_VISITS => 1,
+ Metrics::INDEX_NB_UNIQ_VISITORS => 1,
+ Metrics::INDEX_PAGE_NB_HITS => 1,
+ )));
}
return $row;
}
@@ -287,7 +289,7 @@ class Piwik_Actions_ArchivingHelper
/**
* Explodes action name into an array of elements.
*
- * NOTE: before calling this function make sure Piwik_Actions_ArchivingHelper::reloadConfig(); is called
+ * NOTE: before calling this function make sure ArchivingHelper::reloadConfig(); is called
*
* for downloads:
* we explode link http://piwik.org/some/path/piwik.zip into an array( 'piwik.org', '/some/path/piwik.zip' );
@@ -357,7 +359,6 @@ class Piwik_Actions_ArchivingHelper
$categoryDelimiter = self::$actionUrlCategoryDelimiter;
}
-
if ($isUrl) {
$urlFragment = Action::processUrlFragment($urlFragment);
if (!empty($urlFragment)) {
@@ -504,8 +505,8 @@ class Piwik_Actions_ArchivingHelper
private static function createSummaryRow()
{
return new Row(array(
- Row::COLUMNS =>
- array('label' => DataTable::LABEL_SUMMARY_ROW) + self::getDefaultRowColumns()
- ));
+ Row::COLUMNS =>
+ array('label' => DataTable::LABEL_SUMMARY_ROW) + self::getDefaultRowColumns()
+ ));
}
}
diff --git a/plugins/Actions/Controller.php b/plugins/Actions/Controller.php
index 9ce7800197..e6342352f6 100644
--- a/plugins/Actions/Controller.php
+++ b/plugins/Actions/Controller.php
@@ -6,23 +6,24 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
- * @package Piwik_Actions
+ * @package Actions
*/
-use Piwik\Controller;
+namespace Piwik\Plugins\Actions;
+
use Piwik\ViewDataTable;
use Piwik\View;
/**
* Actions controller
*
- * @package Piwik_Actions
+ * @package Actions
*/
-class Piwik_Actions_Controller extends Controller
+class Controller extends \Piwik\Controller
{
- //
+ //
// Actions that render whole pages
- //
-
+ //
+
public function indexPageUrls($fetch = false)
{
return View::singleReport(
@@ -80,16 +81,16 @@ class Piwik_Actions_Controller extends Controller
Piwik_Translate('Actions_SubmenuOutlinks'),
$this->getOutlinks(true), $fetch);
}
-
- //
+
+ //
// Actions that render individual reports
- //
-
+ //
+
public function getPageUrls($fetch = false)
{
return ViewDataTable::renderReport($this->pluginName, __FUNCTION__, $fetch);
}
-
+
public function getEntryPageUrls($fetch = false)
{
return ViewDataTable::renderReport($this->pluginName, __FUNCTION__, $fetch);