Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
primogenial
/
languages
/
wp-content-20241001222009
/
plugins
/
mailpoet
/
lib
/
Entities
:
UserAgentEntity.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace MailPoet\Entities; if (!defined('ABSPATH')) exit; use MailPoet\Doctrine\EntityTraits\AutoincrementedIdTrait; use MailPoet\Doctrine\EntityTraits\CreatedAtTrait; use MailPoet\Doctrine\EntityTraits\UpdatedAtTrait; use MailPoetVendor\Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity() * @ORM\Table(name="user_agents") */ class UserAgentEntity { use AutoincrementedIdTrait; use CreatedAtTrait; use UpdatedAtTrait; public const USER_AGENT_TYPE_HUMAN = 0; public const USER_AGENT_TYPE_MACHINE = 1; public const MACHINE_USER_AGENTS = [ 'Mozilla/5.0', ]; /** * @ORM\Column(type="string") * @var string */ private $hash; /** * @ORM\Column(type="string") * @var string */ private $userAgent; public function __construct( string $userAgent ) { $this->setUserAgent($userAgent); } public function getUserAgent(): string { return $this->userAgent; } public function setUserAgent(string $userAgent): void { $this->userAgent = $userAgent; $this->hash = (string)crc32($userAgent); } public function getHash(): string { return $this->hash; } public function getUserAgentType(): int { if (in_array($this->getUserAgent(), self::MACHINE_USER_AGENTS, true)) { return self::USER_AGENT_TYPE_MACHINE; } return self::USER_AGENT_TYPE_HUMAN; } }