![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/vendor/matomo/device-detector/Parser/Device/ |
<?php declare(strict_types=1); /** * Device Detector - The Universal Device Detection library for parsing User Agents * * @link https://matomo.org * * @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later */ namespace DeviceDetector\Parser\Device; /** * Class HbbTv * * Device parser for hbbtv detection */ class HbbTv extends AbstractDeviceParser { /** * @var string */ protected $fixtureFile = 'regexes/device/televisions.yml'; /** * @var string */ protected $parserName = 'tv'; /** * Parses the current UA and checks whether it contains HbbTv information * * @see televisions.yml for list of detected televisions * * @return array|null */ public function parse(): ?array { // only parse user agents containing fragments: hbbtv if (null === $this->isHbbTv()) { return null; } parent::parse(); // always set device type to tv, even if no model/brand could be found $this->deviceType = self::DEVICE_TYPE_TV; return $this->getResult(); } /** * Returns if the parsed UA was identified as a HbbTV device * * @return string|null */ public function isHbbTv(): ?string { $regex = 'HbbTV/([1-9]{1}(?:\.[0-9]{1}){1,2})'; $match = $this->matchUserAgent($regex); return $match[1] ?? null; } }