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:
Diffstat (limited to 'plugins/CoreHome/Columns/VisitorReturning.php')
-rw-r--r--plugins/CoreHome/Columns/VisitorReturning.php47
1 files changed, 34 insertions, 13 deletions
diff --git a/plugins/CoreHome/Columns/VisitorReturning.php b/plugins/CoreHome/Columns/VisitorReturning.php
index ca1ef11652..862fb12c6e 100644
--- a/plugins/CoreHome/Columns/VisitorReturning.php
+++ b/plugins/CoreHome/Columns/VisitorReturning.php
@@ -8,9 +8,9 @@
*/
namespace Piwik\Plugins\CoreHome\Columns;
+use Piwik\Metrics\Formatter;
use Piwik\Piwik;
use Piwik\Plugin\Dimension\VisitDimension;
-use Piwik\Plugins\CoreHome\Segment;
use Piwik\Tracker\Action;
use Piwik\Tracker\Request;
use Piwik\Tracker\Visitor;
@@ -23,22 +23,44 @@ class VisitorReturning extends VisitDimension
protected $columnName = 'visitor_returning';
protected $columnType = 'TINYINT(1) NULL';
+ protected $segmentName = 'visitorType';
+ protected $nameSingular = 'General_VisitType';
+ protected $namePlural = 'General_VisitTypes';
protected $conversionField = true;
+ protected $type = self::TYPE_ENUM;
- protected function configureSegments()
+ public function __construct()
{
- $acceptedValues = 'new, returning, returningCustomer. ';
- $acceptedValues .= Piwik::translate('General_VisitTypeExample', '"&segment=visitorType==returning,visitorType==returningCustomer"');
-
- $segment = new Segment();
- $segment->setSegment('visitorType');
- $segment->setName('General_VisitType');
- $segment->setAcceptedValues($acceptedValues);
- $segment->setSqlFilterValue(function ($type) {
+ $this->acceptValues = 'new, returning, returningCustomer. ';
+ $this->acceptValues .= Piwik::translate('General_VisitTypeExample', '"&segment=visitorType==returning,visitorType==returningCustomer"');
+ $this->sqlFilterValue = function ($type) {
+ if (is_numeric($type)) {
+ return $type;
+ }
return $type == "new" ? 0 : ($type == "returning" ? 1 : 2);
- });
+ };
+ }
+
+ public function formatValue($value, $idSite, Formatter $formatter)
+ {
+ if ($value === 1 || $value === '1' || $value === 'returning') {
+ return Piwik::translate('CoreHome_VisitTypeReturning');
+ } elseif ($value === 2 || $value === '2' || $value === 'returningCustomer'){
+ return Piwik::translate('CoreHome_VisitTypeReturningCustomer');
+ } elseif ($value === 0 || $value === '0' || $value === 'new'){
+ return Piwik::translate('General_New');
+ }
- $this->addSegment($segment);
+ return $value;
+ }
+
+ public function getEnumColumnValues()
+ {
+ return array(
+ self::IS_RETURNING_CUSTOMER => 'returningCustomer',
+ self::IS_RETURNING => 'returning',
+ self::IS_NEW => 'new',
+ );
}
/**
@@ -49,7 +71,6 @@ class VisitorReturning extends VisitDimension
*/
public function onNewVisit(Request $request, Visitor $visitor, $action)
{
-
$daysSinceLastOrder = $request->getDaysSinceLastOrder();
$isReturningCustomer = ($daysSinceLastOrder !== false);