PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.1.5
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.1.5
5.13.0 5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / Tracker / Visitor.php
matomo / app / core / Tracker Last commit date
Db 1 year ago Handler 2 years ago Visit 2 years ago Action.php 2 years ago ActionPageview.php 2 years ago Cache.php 2 years ago Db.php 2 years ago Failures.php 2 years ago FingerprintSalt.php 2 years ago GoalManager.php 2 years ago Handler.php 2 years ago IgnoreCookie.php 2 years ago LogTable.php 2 years ago Model.php 2 years ago PageUrl.php 2 years ago Request.php 2 years ago RequestProcessor.php 2 years ago RequestSet.php 2 years ago Response.php 2 years ago ScheduledTasksRunner.php 2 years ago Settings.php 2 years ago TableLogAction.php 2 years ago TrackerCodeGenerator.php 2 years ago TrackerConfig.php 2 years ago Visit.php 2 years ago VisitExcluded.php 2 years ago VisitInterface.php 2 years ago Visitor.php 2 years ago VisitorNotFoundInDb.php 2 years ago VisitorRecognizer.php 2 years ago
Visitor.php
91 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\Tracker;
10
11 use Piwik\Tracker\Visit\VisitProperties;
12 class Visitor
13 {
14 private $visitorKnown = false;
15 /**
16 * @var VisitProperties
17 */
18 public $visitProperties;
19 /**
20 * @var VisitProperties
21 */
22 public $previousVisitProperties;
23 public function __construct(VisitProperties $visitProperties, $isVisitorKnown = false, VisitProperties $previousVisitProperties = null)
24 {
25 $this->visitProperties = $visitProperties;
26 $this->previousVisitProperties = $previousVisitProperties;
27 $this->setIsVisitorKnown($isVisitorKnown);
28 }
29 public static function makeFromVisitProperties(VisitProperties $visitProperties, \Piwik\Tracker\Request $request, VisitProperties $previousVisitProperties = null)
30 {
31 $isKnown = $request->getMetadata('CoreHome', 'isVisitorKnown');
32 return new \Piwik\Tracker\Visitor($visitProperties, $isKnown, $previousVisitProperties);
33 }
34 public function setVisitorColumn($column, $value)
35 {
36 $this->visitProperties->setProperty($column, $value);
37 }
38 public function getVisitorColumn($column)
39 {
40 if (array_key_exists($column, $this->visitProperties->getProperties())) {
41 return $this->visitProperties->getProperty($column);
42 }
43 return false;
44 }
45 /**
46 * Get a visitor property that will not have been changed by other request processors
47 *
48 * @param string $column
49 *
50 * @return false|mixed|null
51 */
52 public function getImmutableVisitorColumn(string $column)
53 {
54 return $this->visitProperties->getImmutableProperty($column);
55 }
56 /**
57 * Initialize a visitor property
58 *
59 * @param string $column
60 * @param $value
61 *
62 * @return void
63 */
64 public function initializeVisitorProperty(string $column, $value)
65 {
66 $this->visitProperties->initializeProperty($column, $value);
67 }
68 public function getPreviousVisitColumn($column)
69 {
70 if (empty($this->previousVisitProperties)) {
71 return false;
72 }
73 if (array_key_exists($column, $this->previousVisitProperties->getProperties())) {
74 return $this->previousVisitProperties->getProperty($column);
75 }
76 return false;
77 }
78 public function isVisitorKnown()
79 {
80 return $this->visitorKnown === true;
81 }
82 public function isNewVisit()
83 {
84 return !$this->isVisitorKnown();
85 }
86 private function setIsVisitorKnown($isVisitorKnown)
87 {
88 return $this->visitorKnown = $isVisitorKnown;
89 }
90 }
91