diff options
author | Stefan Giehl <stefan@matomo.org> | 2020-04-23 10:43:30 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-23 10:43:30 +0300 |
commit | a8d917778e75346eab9509ac9707f7e6e2e6c58d (patch) | |
tree | 8259898ab33eb882e631f1f5475cd1482f70e402 /plugins/CoreHome | |
parent | 0cdeb6da6e4679c56aa351c004cbd6afe7843c56 (diff) |
Refactores the way segments are configured in dimensions (#15836)
* Improve naming of methods for segments to rescrict access for anonymous user
* Introduce new classes SegmentsList nad DimensionSegmentFactory
* removes SegmentEditor\SegmentList and adds some tests
* submodule updates
Diffstat (limited to 'plugins/CoreHome')
-rw-r--r-- | plugins/CoreHome/Columns/LinkVisitActionIdPages.php | 4 | ||||
-rw-r--r-- | plugins/CoreHome/Columns/VisitId.php | 6 | ||||
-rw-r--r-- | plugins/CoreHome/Columns/VisitIp.php | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/plugins/CoreHome/Columns/LinkVisitActionIdPages.php b/plugins/CoreHome/Columns/LinkVisitActionIdPages.php index fe8355f2f8..c218ce7090 100644 --- a/plugins/CoreHome/Columns/LinkVisitActionIdPages.php +++ b/plugins/CoreHome/Columns/LinkVisitActionIdPages.php @@ -9,11 +9,13 @@ namespace Piwik\Plugins\CoreHome\Columns; use Piwik\Columns\DimensionMetricFactory; +use Piwik\Columns\DimensionSegmentFactory; use Piwik\Columns\Discriminator; use Piwik\Columns\MetricsList; use Piwik\Piwik; use Piwik\Plugin\ArchivedMetric; use Piwik\Plugin\Dimension\ActionDimension; +use Piwik\Segment\SegmentsList; use Piwik\Tracker\Action; class LinkVisitActionIdPages extends ActionDimension @@ -23,7 +25,7 @@ class LinkVisitActionIdPages extends ActionDimension protected $nameSingular = 'General_Actions'; protected $type = self::TYPE_NUMBER; - public function configureSegments() + public function configureSegments(SegmentsList $segmentsList, DimensionSegmentFactory $dimensionSegmentFactory) { // empty so we don't auto-generate a segment } diff --git a/plugins/CoreHome/Columns/VisitId.php b/plugins/CoreHome/Columns/VisitId.php index b55501a9f2..cea3a1f1cf 100644 --- a/plugins/CoreHome/Columns/VisitId.php +++ b/plugins/CoreHome/Columns/VisitId.php @@ -9,11 +9,13 @@ namespace Piwik\Plugins\CoreHome\Columns; use Piwik\Columns\DimensionMetricFactory; +use Piwik\Columns\DimensionSegmentFactory; use Piwik\Columns\MetricsList; use Piwik\Piwik; use Piwik\Plugin\ArchivedMetric; use Piwik\Plugin\Dimension\VisitDimension; use Piwik\Plugin\Segment; +use Piwik\Segment\SegmentsList; /** * Dimension for the log_visit.idvisit column. This column is added in the CREATE TABLE @@ -30,11 +32,11 @@ class VisitId extends VisitDimension protected $metricId = 'visits'; protected $type = self::TYPE_TEXT; - protected function configureSegments() + public function configureSegments(SegmentsList $segmentsList, DimensionSegmentFactory $dimensionSegmentFactory) { $segment = new Segment(); $segment->setName('General_VisitId'); - $this->addSegment($segment); + $segmentsList->addSegment($dimensionSegmentFactory->createSegment($segment)); } public function configureMetrics(MetricsList $metricsList, DimensionMetricFactory $dimensionMetricFactory) diff --git a/plugins/CoreHome/Columns/VisitIp.php b/plugins/CoreHome/Columns/VisitIp.php index f7f09e56f4..9a75b5856f 100644 --- a/plugins/CoreHome/Columns/VisitIp.php +++ b/plugins/CoreHome/Columns/VisitIp.php @@ -8,11 +8,13 @@ namespace Piwik\Plugins\CoreHome\Columns; +use Piwik\Columns\DimensionSegmentFactory; use Piwik\Common; use Piwik\Metrics\Formatter; use Matomo\Network\IPUtils; use Piwik\Plugin\Dimension\VisitDimension; use Piwik\Plugin\Segment; +use Piwik\Segment\SegmentsList; /** * Dimension for the log_visit.location_ip column. This column is added in the CREATE TABLE @@ -36,10 +38,10 @@ class VisitIp extends VisitDimension return $value; } - protected function configureSegments() + public function configureSegments(SegmentsList $segmentsList, DimensionSegmentFactory $dimensionSegmentFactory) { $segment = new Segment(); $segment->setType(Segment::TYPE_METRIC); // we cannot remove this for now as it would assign dimension based on text type - $this->addSegment($segment); + $segmentsList->addSegment($dimensionSegmentFactory->createSegment($segment)); } } |