1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
<?php
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Plugins\SitesManager\SiteContentDetection;
class GoogleAnalytics3 extends SiteContentDetectionAbstract
{
public static function getName(): string
{
return 'Google Analytics 3';
}
public static function getContentType(): int
{
return self::TYPE_TRACKER;
}
public function isDetected(?string $data = null, ?array $headers = null): bool
{
if (empty($data)) {
return false;
}
if (strpos($data, '(i,s,o,g,r,a,m)') !== false) {
return true;
}
$tests = [
"/UA-\d{5,}-\d{1,}/", "/google\-analytics\.com\/analytics\.js/", "/window\.ga\s?=\s?window\.ga/",
"/google[ _\-]{0,1}analytics/i",
];
foreach ($tests as $test) {
if (preg_match($test, $data) === 1) {
return true;
}
}
return false;
}
}
|