PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.1.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.1.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 / js / tracker.php
matomo / app / js Last commit date
.htaccess 2 years ago LICENSE.txt 6 years ago README.md 2 years ago index.php 2 years ago piwik.min.js 2 years ago tracker.php 2 years ago
tracker.php
88 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
10 use Piwik\ProxyHttp;
11
12 /**
13 * Tracker proxy
14 */
15 if ($_SERVER['REQUEST_METHOD'] == 'POST'
16 || !empty($_SERVER['QUERY_STRING'])
17 ) {
18 include '../piwik.php';
19 exit;
20 }
21
22 /**
23 * piwik.js proxy
24 *
25 * @see core/Piwik.php
26 */
27 define('PIWIK_DOCUMENT_ROOT', '..');
28
29 if (file_exists(PIWIK_DOCUMENT_ROOT . '/bootstrap.php')) {
30 require_once PIWIK_DOCUMENT_ROOT . '/bootstrap.php';
31 }
32
33 if (!defined('PIWIK_INCLUDE_PATH')) {
34 define('PIWIK_INCLUDE_PATH', PIWIK_DOCUMENT_ROOT);
35 }
36
37 if (!defined('PIWIK_USER_PATH')) {
38 define('PIWIK_USER_PATH', PIWIK_DOCUMENT_ROOT);
39 }
40
41 require_once PIWIK_INCLUDE_PATH . '/libs/upgradephp/upgrade.php';
42
43 if (is_dir(PIWIK_INCLUDE_PATH . '/vendor')) {
44 define('PIWIK_VENDOR_PATH', PIWIK_INCLUDE_PATH . '/vendor'); // Piwik is the main project
45 } else {
46 define('PIWIK_VENDOR_PATH', PIWIK_INCLUDE_PATH . '/../..'); // Piwik is installed as a Composer dependency
47 }
48
49 // Composer autoloader
50 require PIWIK_VENDOR_PATH . '/autoload.php';
51
52 $file = '../matomo.js';
53
54 $daysExpireFarFuture = 10;
55
56 $byteStart = $byteEnd = false;
57 if (!defined("PIWIK_KEEP_JS_TRACKER_COMMENT")
58 || !PIWIK_KEEP_JS_TRACKER_COMMENT
59 ) {
60 $byteStart = 378; // length of comment header in bytes
61 }
62
63 class Validator {
64 public function validate() {}
65 }
66 $validator = new Validator();
67 $environment = new \Piwik\Application\Environment(null, array(
68 'Piwik\Application\Kernel\EnvironmentValidator' => $validator
69 ));
70 $environment->init();
71
72 if (!\Piwik\Tracker\IgnoreCookie::isIgnoreCookieFound()) {
73
74 $request = new \Piwik\Tracker\Request(array());
75
76 if ($request->shouldUseThirdPartyCookie()) {
77 $visitorId = $request->getVisitorIdForThirdPartyCookie();
78 if (!$visitorId) {
79 $visitorId = \Piwik\Common::hex2bin(\Piwik\Tracker\Visit::generateUniqueVisitorId());
80 }
81 $request->setThirdPartyCookie($visitorId);
82 }
83 }
84
85 ProxyHttp::serverStaticFile($file, "application/javascript; charset=UTF-8", $daysExpireFarFuture, $byteStart, $byteEnd);
86
87 exit;
88