<?php
namespace App\Entity;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
use App\Repository\CharRepository;
use Gedmo\Translatable\Translatable;
use App\Entity\Translation\CharTranslation;
use App\Entity\Translation\PageTranslation;
use Gedmo\Mapping\Annotation\TranslationEntity;
use Doctrine\Common\Collections\ArrayCollection;
use Gedmo\Mapping\Annotation\Locale as GedmoLocale;
use Gedmo\Mapping\Annotation\Translatable as GedmoTranslatable;
#[ORM\Entity(repositoryClass: CharRepository::class)]
#[ORM\Table(name: '`char`')]
#[TranslationEntity(class: CharTranslation::class)]
class Char implements EntityInterface
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(type: 'integer')]
private int $cat = 0;
#[GedmoTranslatable]
#[ORM\Column(length: 255)]
private ?string $name = null;
#[ORM\Column(type: Types::SMALLINT)]
private ?int $type = null;
#[ORM\Column]
private ?int $search = null;
#[ORM\Column(type: Types::SMALLINT)]
private ?int $buy = null;
#[ORM\Column(length: 255)]
private ?string $izm = null;
#[ORM\Column(type: Types::SMALLINT)]
private ?int $prior = null;
#[ORM\Column]
private ?bool $visible = null;
#[ORM\Column(type: Types::SMALLINT)]
private ?int $incat = null;
#[GedmoLocale]
private $locale;
#[ORM\OneToMany(targetEntity: CharTranslation::class, mappedBy: 'object', cascade: ['persist', 'remove'])]
private $translations;
#[ORM\Column]
private bool $inprod = true;
public function __construct()
{
$this->translations = new ArrayCollection();
}
public function setLocale($locale)
{
$this->locale = $locale;
}
public function getTranslations()
{
return $this->translations;
}
public function addTranslation(CharTranslation $t)
{
if (!$this->translations->contains($t)) {
$this->translations[] = $t;
$t->setObject($this);
}
}
public function getId(): ?int
{
return $this->id;
}
public function getCatId(): ?int
{
return $this->cat;
}
public function setCatId(int $cat_id): self
{
$this->cat = $cat_id;
return $this;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(string $name): self
{
$this->name = $name;
return $this;
}
public function getType(): ?int
{
return $this->type;
}
public function setType(int $type): self
{
$this->type = $type;
return $this;
}
public function getSearch(): ?int
{
return $this->search;
}
public function setSearch(int $search): self
{
$this->search = $search;
return $this;
}
public function getBuy(): ?int
{
return $this->buy;
}
public function setBuy(int $buy): self
{
$this->buy = $buy;
return $this;
}
public function getIzm(): ?string
{
return $this->izm;
}
public function setIzm(string $izm): self
{
$this->izm = $izm;
return $this;
}
public function getPrior(): ?int
{
return $this->prior;
}
public function setPrior(int $prior): self
{
$this->prior = $prior;
return $this;
}
public function isVisible(): ?bool
{
return $this->visible;
}
public function setVisible(bool $visible): self
{
$this->visible = $visible;
return $this;
}
public function getIncat(): ?int
{
return $this->incat;
}
public function setIncat(int $incat): self
{
$this->incat = $incat;
return $this;
}
public function isInprod(): bool
{
return $this->inprod;
}
public function setInprod(bool $inprod): static
{
$this->inprod = $inprod;
return $this;
}
}