![]() 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/app/bundles/PageBundle/Entity/ |
<?php namespace Mautic\PageBundle\Entity; use Doctrine\ORM\Mapping as ORM; use Mautic\ApiBundle\Serializer\Driver\ApiMetadataDriver; use Mautic\CoreBundle\Doctrine\Mapping\ClassMetadataBuilder; class Trackable { /** * @var Redirect */ private $redirect; /** * @var string */ private $channel; /** * @var int */ private $channelId; /** * @var int */ private $hits = 0; /** * @var int */ private $uniqueHits = 0; public static function loadMetadata(ORM\ClassMetadata $metadata): void { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('channel_url_trackables') ->setCustomRepositoryClass(TrackableRepository::class) ->addIndex(['channel', 'channel_id'], 'channel_url_trackable_search'); $builder->createManyToOne('redirect', Redirect::class) ->addJoinColumn('redirect_id', 'id', true, false, 'CASCADE') ->cascadePersist() ->inversedBy('trackables') ->isPrimaryKey() ->build(); $builder->createField('channelId', 'integer') ->columnName('channel_id') ->makePrimaryKey() ->build(); $builder->addField('channel', 'string'); $builder->addField('hits', 'integer'); $builder->addNamedField('uniqueHits', 'integer', 'unique_hits'); } /** * Prepares the metadata for API usage. */ public static function loadApiMetadata(ApiMetadataDriver $metadata): void { $metadata->setGroupPrefix('trackable') ->addListProperties( [ 'redirect', 'channelId', 'channel', 'hits', 'uniqueHits', ] ) ->build(); } /** * @return Redirect */ public function getRedirect() { return $this->redirect; } /** * @return Trackable */ public function setRedirect(Redirect $redirect) { $this->redirect = $redirect; return $this; } /** * @return string */ public function getChannel() { return $this->channel; } /** * @param string $channel * * @return Trackable */ public function setChannel($channel) { $this->channel = $channel; return $this; } /** * @return int */ public function getChannelId() { return $this->channelId; } /** * @param int $channelId * * @return Trackable */ public function setChannelId($channelId) { $this->channelId = $channelId; return $this; } /** * @return int */ public function getHits() { return $this->hits; } /** * @param int $hits * * @return Trackable */ public function setHits($hits) { $this->hits = $hits; return $this; } /** * @return int */ public function getUniqueHits() { return $this->uniqueHits; } /** * @param int $uniqueHits * * @return Trackable */ public function setUniqueHits($uniqueHits) { $this->uniqueHits = $uniqueHits; return $this; } }