<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use App\Entity\Traits\ActiveTrait;
use App\Entity\Traits\DeleteTrait;
use App\Entity\Traits\SubTitleTrait;
use App\Entity\Traits\SortOrderTrait;
use App\Entity\Traits\TranslateTrait;
use App\Entity\Traits\FileUploadTrait;
use Gedmo\Mapping\Annotation as Gedmo;
use App\Entity\Traits\ImageUploadTrait;
use App\Entity\Interfaces\DefaultEntity;
use App\Repository\TestimonialRepository;
use App\Entity\Traits\TitleAndContentTrait;
use Gedmo\Timestampable\Traits\TimestampableEntity;
/**
* @Gedmo\Loggable
*/
#[ORM\Entity(repositoryClass: TestimonialRepository::class)]
#[ORM\HasLifecycleCallbacks]
#[ORM\Table(name: 'testimonial')]
class Testimonial implements DefaultEntity
{
use TitleAndContentTrait; // DefaultEntity & DefaultLinkedEntity
use ActiveTrait; // DefaultEntity & DefaultLinkedEntity
use DeleteTrait; // DefaultEntity & DefaultLinkedEntity
use TimestampableEntity; // DefaultEntity & DefaultLinkedEntity
use TranslateTrait; // DefaultEntity & DefaultLinkedEntity
use SubTitleTrait; // Optional
use ImageUploadTrait; // Optional
use FileUploadTrait; // Optional
use SortOrderTrait; // Optional
#[ORM\Column(name: 'id', type: 'integer')]
#[ORM\Id]
#[ORM\GeneratedValue(strategy: 'AUTO')]
private readonly int $id;
#[ORM\Column(type: 'string', length: 255)]
private $author;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $company;
#[ORM\Column(type: 'boolean', options: ['default' => false])]
private $featured;
public function getId(): ?int
{
return $this->id;
}
public function getAuthor(): ?string
{
return $this->author;
}
public function setAuthor(string $author): self
{
$this->author = $author;
return $this;
}
public function getCompany(): ?string
{
return $this->company;
}
public function setCompany(?string $company): self
{
$this->company = $company;
return $this;
}
public function getFeatured(): ?bool
{
return $this->featured;
}
public function setFeatured(bool $featured): self
{
$this->featured = $featured;
return $this;
}
}