diff options
author | mattab <matthieu.aubry@gmail.com> | 2013-08-11 21:28:30 +0400 |
---|---|---|
committer | mattab <matthieu.aubry@gmail.com> | 2013-08-11 21:28:30 +0400 |
commit | d293408450bc8b0c0f79934da6a43914626935ae (patch) | |
tree | e50c0df2f698b6033e13f963b9a16a01ef5bf020 /plugins/VisitTime | |
parent | 3b74ae5cdac37e16315c3a24ecf2591f742ca3c7 (diff) | |
parent | 2340530c1109a37527f3b8ad0b82e54e7a6eb137 (diff) |
Merge branch 'plugin_namespaces'
Conflicts:
plugins/UserCountryMap/Controller.php
Diffstat (limited to 'plugins/VisitTime')
-rw-r--r-- | plugins/VisitTime/API.php | 52 | ||||
-rw-r--r-- | plugins/VisitTime/Archiver.php | 15 | ||||
-rw-r--r-- | plugins/VisitTime/Controller.php | 9 | ||||
-rw-r--r-- | plugins/VisitTime/VisitTime.php | 26 | ||||
-rw-r--r-- | plugins/VisitTime/functions.php | 40 |
5 files changed, 82 insertions, 60 deletions
diff --git a/plugins/VisitTime/API.php b/plugins/VisitTime/API.php index 76e9b5652b..25d1ae8a81 100644 --- a/plugins/VisitTime/API.php +++ b/plugins/VisitTime/API.php @@ -6,8 +6,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * * @category Piwik_Plugins - * @package Piwik_VisitTime + * @package VisitTime */ +namespace Piwik\Plugins\VisitTime; + +use Exception; use Piwik\Archive; use Piwik\Metrics; use Piwik\Period; @@ -15,13 +18,16 @@ use Piwik\Piwik; use Piwik\Date; use Piwik\DataTable; use Piwik\Site; +use Piwik\Plugins\VisitTime\Archiver; + +require_once PIWIK_INCLUDE_PATH . '/plugins/VisitTime/functions.php'; /** * VisitTime API lets you access reports by Hour (Server time), and by Hour Local Time of your visitors. * - * @package Piwik_VisitTime + * @package VisitTime */ -class Piwik_VisitTime_API +class API { static private $instance = null; @@ -39,19 +45,19 @@ class Piwik_VisitTime_API $archive = Archive::build($idSite, $period, $date, $segment); $dataTable = $archive->getDataTable($name); $dataTable->filter('Sort', array('label', 'asc', true)); - $dataTable->queueFilter('ColumnCallbackReplace', array('label', 'Piwik_getTimeLabel')); + $dataTable->queueFilter('ColumnCallbackReplace', array('label', __NAMESPACE__ .'\getTimeLabel')); $dataTable->queueFilter('ReplaceColumnNames'); return $dataTable; } public function getVisitInformationPerLocalTime($idSite, $period, $date, $segment = false) { - return $this->getDataTable(Piwik_VisitTime_Archiver::LOCAL_TIME_RECORD_NAME, $idSite, $period, $date, $segment); + return $this->getDataTable(Archiver::LOCAL_TIME_RECORD_NAME, $idSite, $period, $date, $segment); } public function getVisitInformationPerServerTime($idSite, $period, $date, $segment = false, $hideFutureHoursWhenToday = false) { - $table = $this->getDataTable(Piwik_VisitTime_Archiver::SERVER_TIME_RECORD_NAME, $idSite, $period, $date, $segment); + $table = $this->getDataTable(Archiver::SERVER_TIME_RECORD_NAME, $idSite, $period, $date, $segment); if ($hideFutureHoursWhenToday) { $table = $this->removeHoursInFuture($table, $idSite, $period, $date); } @@ -76,7 +82,7 @@ class Piwik_VisitTime_API // metrics to query $metrics = Metrics::getVisitsMetricNames(); unset($metrics[Metrics::INDEX_MAX_ACTIONS]); - + // disabled for multiple dates if (Period::isMultiplePeriod($date, $period)) { throw new Exception("VisitTime.getByDayOfWeek does not support multiple dates."); @@ -100,7 +106,7 @@ class Piwik_VisitTime_API } // group by the day of the week (see below for dayOfWeekFromDate function) - $dataTable->filter('GroupBy', array('label', 'Piwik_VisitTime_dayOfWeekFromDate')); + $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\dayOfWeekFromDate')); // create new datatable w/ empty rows, then add calculated datatable $rows = array(); @@ -115,7 +121,7 @@ class Piwik_VisitTime_API $result->filter('ColumnCallbackAddMetadata', array('label', 'day_of_week')); // translate labels - $result->filter('ColumnCallbackReplace', array('label', 'Piwik_VisitTime_translateDayOfWeek')); + $result->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\translateDayOfWeek')); // set datatable metadata for period start & finish $result->setMetadata('date_start', $oPeriod->getDateStart()); @@ -161,31 +167,3 @@ class Piwik_VisitTime_API return $table; } } - -function Piwik_getTimeLabel($label) -{ - return sprintf(Piwik_Translate('VisitTime_NHour'), $label); -} - -/** - * Returns the day of the week for a date string, without creating a new - * Date instance. - * - * @param string $dateStr - * @return int The day of the week (1-7) - */ -function Piwik_VisitTime_dayOfWeekFromDate($dateStr) -{ - return date('N', strtotime($dateStr)); -} - -/** - * Returns translated long name of a day of the week. - * - * @param int $dayOfWeek 1-7, for Sunday-Saturday - * @return string - */ -function Piwik_VisitTime_translateDayOfWeek($dayOfWeek) -{ - return Piwik_Translate('General_LongDay_' . $dayOfWeek); -} diff --git a/plugins/VisitTime/Archiver.php b/plugins/VisitTime/Archiver.php index 77b7659d9b..c51c082967 100644 --- a/plugins/VisitTime/Archiver.php +++ b/plugins/VisitTime/Archiver.php @@ -6,14 +6,16 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * * @category Piwik_Plugins - * @package Piwik_VisitTime + * @package VisitTime */ +namespace Piwik\Plugins\VisitTime; + use Piwik\Date; use Piwik\DataArray; use Piwik\PluginsArchiver; -class Piwik_VisitTime_Archiver extends PluginsArchiver +class Archiver extends PluginsArchiver { const SERVER_TIME_RECORD_NAME = 'VisitTime_serverTime'; const LOCAL_TIME_RECORD_NAME = 'VisitTime_localTime'; @@ -26,8 +28,8 @@ class Piwik_VisitTime_Archiver extends PluginsArchiver protected function aggregateByServerTime() { - $array = $this->getProcessor()->getMetricsForDimension( array("label" => "HOUR(log_visit.visit_last_action_time)" )) ; - $query = $this->getLogAggregator()->queryConversionsByDimension( array("label" => "HOUR(log_conversion.server_time)") ); + $array = $this->getProcessor()->getMetricsForDimension(array("label" => "HOUR(log_visit.visit_last_action_time)")); + $query = $this->getLogAggregator()->queryConversionsByDimension(array("label" => "HOUR(log_conversion.server_time)")); if ($query === false) { return; } @@ -62,13 +64,12 @@ class Piwik_VisitTime_Archiver extends PluginsArchiver return new DataArray($converted); } - - private function ensureAllHoursAreSet( DataArray &$array) + private function ensureAllHoursAreSet(DataArray &$array) { $data = $array->getDataArray(); for ($i = 0; $i <= 23; $i++) { if (empty($data[$i])) { - $array->sumMetricsVisits( $i, DataArray::makeEmptyRow()); + $array->sumMetricsVisits($i, DataArray::makeEmptyRow()); } } } diff --git a/plugins/VisitTime/Controller.php b/plugins/VisitTime/Controller.php index 4c4fa760db..dcc89ac9fb 100644 --- a/plugins/VisitTime/Controller.php +++ b/plugins/VisitTime/Controller.php @@ -6,17 +6,18 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * * @category Piwik_Plugins - * @package Piwik_VisitTime + * @package VisitTime */ -use Piwik\Controller; +namespace Piwik\Plugins\VisitTime; + use Piwik\ViewDataTable; use Piwik\View; /** * - * @package Piwik_VisitTime + * @package VisitTime */ -class Piwik_VisitTime_Controller extends Controller +class Controller extends \Piwik\Controller { public function index() { diff --git a/plugins/VisitTime/VisitTime.php b/plugins/VisitTime/VisitTime.php index e9873ae05c..8e047803da 100644 --- a/plugins/VisitTime/VisitTime.php +++ b/plugins/VisitTime/VisitTime.php @@ -6,20 +6,23 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * * @category Piwik_Plugins - * @package Piwik_VisitTime + * @package VisitTime */ +namespace Piwik\Plugins\VisitTime; + +use Exception; use Piwik\ArchiveProcessor; use Piwik\Common; use Piwik\Period; -use Piwik\Plugin; +use Piwik\Plugins\VisitTime\Archiver; use Piwik\Site; use Piwik\WidgetsList; /** * - * @package Piwik_VisitTime + * @package VisitTime */ -class Piwik_VisitTime extends Plugin +class VisitTime extends \Piwik\Plugin { /** * @see Piwik_Plugin::getListHooksRegistered @@ -116,7 +119,7 @@ class Piwik_VisitTime extends Plugin 'acceptedValues' => $acceptedValues ); } - + public function getReportDisplayProperties(&$properties) { $commonProperties = array( @@ -128,7 +131,7 @@ class Piwik_VisitTime extends Plugin 'show_pagination_control' => false, 'default_view_type' => 'graphVerticalBar' ); - + $properties['VisitTime.getVisitInformationPerServerTime'] = array_merge($commonProperties, array( 'filter_limit' => 24, 'show_goals' => true, @@ -176,21 +179,20 @@ class Piwik_VisitTime extends Plugin public function archivePeriod(ArchiveProcessor\Period $archiveProcessor) { - $archiving = new Piwik_VisitTime_Archiver($archiveProcessor); - if($archiving->shouldArchive()) { + $archiving = new Archiver($archiveProcessor); + if ($archiving->shouldArchive()) { $archiving->archivePeriod(); } } - public function archiveDay(ArchiveProcessor\Day $archiveProcessor) { - $archiving = new Piwik_VisitTime_Archiver($archiveProcessor); - if($archiving->shouldArchive()) { + $archiving = new Archiver($archiveProcessor); + if ($archiving->shouldArchive()) { $archiving->archiveDay(); } } - + private static function getDateRangeForFooterMessage() { // get query params diff --git a/plugins/VisitTime/functions.php b/plugins/VisitTime/functions.php new file mode 100644 index 0000000000..f4ccb20d46 --- /dev/null +++ b/plugins/VisitTime/functions.php @@ -0,0 +1,40 @@ +<?php +/** + * Piwik - Open source web analytics + * + * @link http://piwik.org + * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later + * + * @category Piwik_Plugins + * @package VisitTime + */ + +namespace Piwik\Plugins\VisitTime; + +function getTimeLabel($label) +{ + return sprintf(Piwik_Translate('VisitTime_NHour'), $label); +} + +/** + * Returns the day of the week for a date string, without creating a new + * Date instance. + * + * @param string $dateStr + * @return int The day of the week (1-7) + */ +function dayOfWeekFromDate($dateStr) +{ + return date('N', strtotime($dateStr)); +} + +/** + * Returns translated long name of a day of the week. + * + * @param int $dayOfWeek 1-7, for Sunday-Saturday + * @return string + */ +function translateDayOfWeek($dayOfWeek) +{ + return Piwik_Translate('General_LongDay_' . $dayOfWeek); +} |