<?phpnamespace App\Entity\Content\Pages;use Symfony\Component\Validator\Constraints AS Constraints;use Symfony\Component\Validator\Constraints AS Assert;use Doctrine\ORM\Mapping AS ORM;use Ramsey\Uuid\Uuid;use App\Entity\BaseEntity;/** * @ORM\Entity(repositoryClass="App\Repository\Content\Pages\BlockRepository") * @ORM\Table(name="content_pages_block") * @ORM\HasLifecycleCallbacks() */class Block extends BaseEntity{ /** * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="uuid") * @Assert\Uuid */ protected $uuid; /** * @var \DateTime * * @ORM\Column(type="datetime", nullable=false) */ private $created; /** * @ORM\Column(type="string", length=60, nullable=false) */ private $blockName; /** * @ORM\Column(type="array", nullable=false) */ private $data; /** * @ORM\ManyToOne(targetEntity="Page", inversedBy="blocks") * @ORM\JoinColumn(name="page_id", referencedColumnName="id") **/ private $page; public function __construct(array $defaults = array()) { // Defaults $this->setUuid(Uuid::uuid4()); $this->setCreated(new \DateTime()); $this->data = array(); parent::__construct($defaults); } public function __toString() { return $this->getId(); } public function getId() { return $this->id; } public function setUuid($uuid) { $this->uuid = $uuid; return $this; } public function getUuid() { return $this->uuid; } public function setCreated(\DateTime $created) { $this->created = $created; } public function getCreated() { return $this->created; } public function getBlockName() { return $this->blockName; } public function setBlockName(string $blockName) { $this->blockName = $blockName; } public function setPage(\App\Entity\Content\Pages\Page $page) { $this->page = $page; if($page) $page->addBlock($this); } public function getPage() { return $this->page; } public function setData(array $data = array()) { $this->data = $data; } public function getData() { return $this->data; }}