From 9ba8f216fd7856ce5fef06bf82ecb8f8a2e7e630 Mon Sep 17 00:00:00 2001 From: Thomas Steur Date: Fri, 3 Jul 2015 00:54:27 +0000 Subject: generate pages instead of implementing them in each controller --- plugins/VisitorInterest/Controller.php | 24 ---------------------- plugins/VisitorInterest/Menu.php | 20 ------------------ plugins/VisitorInterest/Reports/Base.php | 3 ++- .../Reports/GetNumberOfVisitsByDaysSinceLast.php | 11 +++++++++- .../Reports/GetNumberOfVisitsByVisitCount.php | 1 - .../Reports/GetNumberOfVisitsPerPage.php | 10 ++++++++- .../Reports/GetNumberOfVisitsPerVisitDuration.php | 10 ++++++++- plugins/VisitorInterest/templates/index.twig | 21 ------------------- 8 files changed, 30 insertions(+), 70 deletions(-) delete mode 100644 plugins/VisitorInterest/Controller.php delete mode 100644 plugins/VisitorInterest/Menu.php delete mode 100644 plugins/VisitorInterest/templates/index.twig (limited to 'plugins/VisitorInterest') diff --git a/plugins/VisitorInterest/Controller.php b/plugins/VisitorInterest/Controller.php deleted file mode 100644 index 8cb5200c4d..0000000000 --- a/plugins/VisitorInterest/Controller.php +++ /dev/null @@ -1,24 +0,0 @@ -dataTableNumberOfVisitsPerVisitDuration = $this->renderReport('getNumberOfVisitsPerVisitDuration'); - $view->dataTableNumberOfVisitsPerPage = $this->renderReport('getNumberOfVisitsPerPage'); - $view->dataTableNumberOfVisitsByVisitNum = $this->renderReport('getNumberOfVisitsByVisitCount'); - $view->dataTableNumberOfVisitsByDaysSinceLast = $this->renderReport('getNumberOfVisitsByDaysSinceLast'); - return $view->render(); - } -} \ No newline at end of file diff --git a/plugins/VisitorInterest/Menu.php b/plugins/VisitorInterest/Menu.php deleted file mode 100644 index 17de395000..0000000000 --- a/plugins/VisitorInterest/Menu.php +++ /dev/null @@ -1,20 +0,0 @@ -rename('General_Visitors', 'VisitFrequency_SubmenuFrequency', - 'General_Visitors', 'VisitorInterest_Engagement'); - } -} diff --git a/plugins/VisitorInterest/Reports/Base.php b/plugins/VisitorInterest/Reports/Base.php index fb3f0b4a42..3381a8e805 100644 --- a/plugins/VisitorInterest/Reports/Base.php +++ b/plugins/VisitorInterest/Reports/Base.php @@ -12,7 +12,8 @@ abstract class Base extends \Piwik\Plugin\Report { protected function init() { - $this->category = 'General_Visitors'; + $this->categoryId = 'General_Visitors'; + $this->subcategoryId = 'VisitorInterest_Engagement'; } } diff --git a/plugins/VisitorInterest/Reports/GetNumberOfVisitsByDaysSinceLast.php b/plugins/VisitorInterest/Reports/GetNumberOfVisitsByDaysSinceLast.php index fd935d47c6..b7b7302842 100644 --- a/plugins/VisitorInterest/Reports/GetNumberOfVisitsByDaysSinceLast.php +++ b/plugins/VisitorInterest/Reports/GetNumberOfVisitsByDaysSinceLast.php @@ -11,6 +11,8 @@ namespace Piwik\Plugins\VisitorInterest\Reports; use Piwik\Piwik; use Piwik\Plugin\ViewDataTable; use Piwik\Plugins\VisitorInterest\Columns\VisitsByDaysSinceLastVisit; +use Piwik\Report\ReportWidgetFactory; +use Piwik\Widget\WidgetsList; class GetNumberOfVisitsByDaysSinceLast extends Base { @@ -26,7 +28,14 @@ class GetNumberOfVisitsByDaysSinceLast extends Base $this->processedMetrics = false; $this->constantRowsCount = true; $this->order = 30; - $this->widgetTitle = 'VisitorInterest_WidgetVisitsByDaysSinceLast'; + + $this->subcategoryId = 'VisitorInterest_Engagement'; + } + + public function configureWidgets(WidgetsList $widgetsList, ReportWidgetFactory $factory) + { + $widget = $factory->createWidget()->setName('VisitorInterest_WidgetVisitsByDaysSinceLast'); + $widgetsList->addWidgetConfig($widget); } public function configureView(ViewDataTable $view) diff --git a/plugins/VisitorInterest/Reports/GetNumberOfVisitsByVisitCount.php b/plugins/VisitorInterest/Reports/GetNumberOfVisitsByVisitCount.php index 74dbf69c14..d7c2a7b7e8 100644 --- a/plugins/VisitorInterest/Reports/GetNumberOfVisitsByVisitCount.php +++ b/plugins/VisitorInterest/Reports/GetNumberOfVisitsByVisitCount.php @@ -31,7 +31,6 @@ class GetNumberOfVisitsByVisitCount extends Base ); $this->constantRowsCount = true; $this->order = 25; - $this->widgetTitle = 'VisitorInterest_visitsByVisitCount'; } public function configureView(ViewDataTable $view) diff --git a/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerPage.php b/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerPage.php index de15ed5f5f..395c70da2b 100644 --- a/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerPage.php +++ b/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerPage.php @@ -13,6 +13,8 @@ use Piwik\Plugin\ViewDataTable; use Piwik\Plugins\CoreVisualizations\Visualizations\Cloud; use Piwik\Plugins\CoreVisualizations\Visualizations\Graph; use Piwik\Plugins\VisitorInterest\Columns\PagesPerVisit; +use Piwik\Report\ReportWidgetFactory; +use Piwik\Widget\WidgetsList; class GetNumberOfVisitsPerPage extends Base { @@ -29,7 +31,13 @@ class GetNumberOfVisitsPerPage extends Base $this->processedMetrics = false; $this->constantRowsCount = true; $this->order = 20; - $this->widgetTitle = 'VisitorInterest_WidgetPages'; + } + + public function configureWidgets(WidgetsList $widgetsList, ReportWidgetFactory $factory) + { + $widgetsList->addWidgetConfig( + $factory->createWidget()->setName('VisitorInterest_VisitsPerNbOfPages') + ); } public function getDefaultTypeViewDataTable() diff --git a/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerVisitDuration.php b/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerVisitDuration.php index ead1849b7f..8ca31b560c 100644 --- a/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerVisitDuration.php +++ b/plugins/VisitorInterest/Reports/GetNumberOfVisitsPerVisitDuration.php @@ -13,6 +13,8 @@ use Piwik\Plugin\ViewDataTable; use Piwik\Plugins\CoreVisualizations\Visualizations\Cloud; use Piwik\Plugins\CoreVisualizations\Visualizations\Graph; use Piwik\Plugins\VisitorInterest\Columns\VisitDuration; +use Piwik\Report\ReportWidgetFactory; +use Piwik\Widget\WidgetsList; class GetNumberOfVisitsPerVisitDuration extends Base { @@ -29,7 +31,13 @@ class GetNumberOfVisitsPerVisitDuration extends Base $this->processedMetrics = false; $this->constantRowsCount = true; $this->order = 15; - $this->widgetTitle = 'VisitorInterest_WidgetLengths'; + } + + public function configureWidgets(WidgetsList $widgetsList, ReportWidgetFactory $factory) + { + $widgetsList->addWidgetConfig( + $factory->createWidget()->setName('VisitorInterest_VisitsPerDuration') + ); } public function getDefaultTypeViewDataTable() diff --git a/plugins/VisitorInterest/templates/index.twig b/plugins/VisitorInterest/templates/index.twig deleted file mode 100644 index 332289e106..0000000000 --- a/plugins/VisitorInterest/templates/index.twig +++ /dev/null @@ -1,21 +0,0 @@ -
-
-

{{ 'VisitorInterest_VisitsPerDuration'|translate }}

- {{ dataTableNumberOfVisitsPerVisitDuration|raw }} -
-
-

{{ 'VisitorInterest_VisitsPerNbOfPages'|translate }}

- {{ dataTableNumberOfVisitsPerPage|raw }} -
-
- -
-
-

{{ 'VisitorInterest_visitsByVisitCount'|translate }}

- {{ dataTableNumberOfVisitsByVisitNum|raw }} -
-
-

{{ 'VisitorInterest_VisitsByDaysSinceLast'|translate }}

- {{ dataTableNumberOfVisitsByDaysSinceLast|raw }} -
-
-- cgit v1.2.3