<?php
namespace App\AtechNet\CoreBundle\Entity;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Mapping\Table as Table;
use Doctrine\ORM\Mapping\UniqueConstraint;
use Symfony\Component\Validator\Constraints as Assert;
/**
* Translation
*
* @Table(name="translations", uniqueConstraints={@UniqueConstraint(name="translation_search_idx", columns={"language_id", "tr_key"})})
* @Entity
* @HasLifecycleCallbacks
*/
class Translation extends AbstractEntity
{
public const LANG_CODE_SK = 1;
public const LANG_CODE_HU = 2;
public const LANG_CODE_CZ = 3;
public const LANG_CODE_EN = 4;
/**
* @return array
*/
public static function getLangChoices()
{
return [
self::LANG_CODE_SK => 'sk',
self::LANG_CODE_HU => 'hu',
self::LANG_CODE_CZ => 'cz',
self::LANG_CODE_EN => 'en',
];
}
/**
* @var Language
*
* @Assert\NotNull
*
* @ManyToOne(targetEntity="Language", inversedBy="translations")
* @JoinColumn(name="language_id", referencedColumnName="id")
*/
private $language;
/**
* @var string
*
* @Assert\NotNull
*
* @Column(name="tr_key", type="string", length=255)
*/
private $key;
/**
* @var string
*
* @Assert\NotNull
*
* @Column(name="value", type="text")
*/
private $value;
/**
* @return Language
*/
public function getLanguage()
{
return $this->language;
}
/**
* @param Language $language
*/
public function setLanguage($language)
{
$this->language = $language;
}
/**
* @return string
*/
public function getKey()
{
return $this->key;
}
/**
* @param string $key
*/
public function setKey($key)
{
$this->key = $key;
}
/**
* @return string
*/
public function getValue()
{
return $this->value;
}
/**
* @param string $value
*/
public function setValue($value)
{
$this->value = $value;
}
}