92 lines
1.8 KiB
PHP
92 lines
1.8 KiB
PHP
<?php
|
|
namespace App\Entity;
|
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
|
|
|
/**
|
|
* @ORM\Table(name="station_media_custom_field")
|
|
* @ORM\Entity
|
|
*/
|
|
class StationMediaCustomField
|
|
{
|
|
use Traits\TruncateStrings;
|
|
|
|
/**
|
|
* @ORM\Column(name="id", type="integer")
|
|
* @ORM\Id
|
|
* @ORM\GeneratedValue(strategy="IDENTITY")
|
|
* @var int
|
|
*/
|
|
protected $id;
|
|
|
|
/**
|
|
* @ORM\Column(name="media_id", type="integer")
|
|
* @var int
|
|
*/
|
|
protected $media_id;
|
|
|
|
/**
|
|
* @ORM\ManyToOne(targetEntity="StationMedia", inversedBy="metadata")
|
|
* @ORM\JoinColumn(name="media_id", referencedColumnName="id", onDelete="CASCADE")
|
|
* @var StationMedia
|
|
*/
|
|
protected $media;
|
|
|
|
/**
|
|
* @ORM\Column(name="field_id", type="integer")
|
|
* @var int
|
|
*/
|
|
protected $field_id;
|
|
|
|
/**
|
|
* @ORM\ManyToOne(targetEntity="CustomField", inversedBy="media_fields")
|
|
* @ORM\JoinColumn(name="field_id", referencedColumnName="id", onDelete="CASCADE")
|
|
* @var CustomField
|
|
*/
|
|
protected $field;
|
|
|
|
/**
|
|
* @ORM\Column(name="field_value", type="string", length=255, nullable=true)
|
|
* @var string
|
|
*/
|
|
protected $value;
|
|
|
|
public function __construct(StationMedia $media, CustomField $field)
|
|
{
|
|
$this->media = $media;
|
|
$this->field = $field;
|
|
}
|
|
|
|
/**
|
|
* @return StationMedia
|
|
*/
|
|
public function getMedia(): StationMedia
|
|
{
|
|
return $this->media;
|
|
}
|
|
|
|
/**
|
|
* @return CustomField
|
|
*/
|
|
public function getField(): CustomField
|
|
{
|
|
return $this->field;
|
|
}
|
|
|
|
/**
|
|
* @return string|null
|
|
*/
|
|
public function getValue(): ?string
|
|
{
|
|
return $this->value;
|
|
}
|
|
|
|
/**
|
|
* @param string|null $value
|
|
*/
|
|
public function setValue($value): void
|
|
{
|
|
$this->value = $this->_truncateString($value);
|
|
}
|
|
}
|