<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use phpDocumentor\Reflection\Types\Integer;
use Vich\UploaderBundle\Mapping\Annotation as Vich;
use Symfony\Component\Serializer\Annotation\Groups;
use Symfony\Component\Serializer\Annotation\MaxDepth;
// use App\Entity\Media;
/**
* @ORM\Entity (repositoryClass="App\Repository\BlockFieldItemRepository")
*/
class BlockFieldItem
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $ordering;
/**
* @MaxDepth(1)
* @ORM\ManyToOne(targetEntity="App\Entity\BlockField", inversedBy="items")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="block_field_id", referencedColumnName="id", onDelete="CASCADE")
* })
*/
private $blockField;
/**
* @ORM\Column(type="json", nullable=true, options={"comment":"Objet type ditem avec donnees"})
*/
private $itemType;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $criterion;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $modality;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $displayCriterionName;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $displayModalityName;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $displayCriterionValue;
/**
* @ORM\Column(type="string", length=255, nullable=true, options={"comment":"Intitulé ou préfixe"})
*/
private $label;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $labelTranslations;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $displayConditions;
/**
* @ORM\Column(type="string", length=255, nullable=true, options={"comment":"Nom de la fonction"})
*/
private $firstFunction;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $firstFunctionParameters;
/**
* @ORM\Column(type="string", length=255, nullable=true, options={"comment":"Nom de la fonction"})
*/
private $secondFunction;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $secondFunctionParameters;
/**
* @ORM\Column(type="string", length=255, nullable=true, options={"comment":"Nom de la fonction"})
*/
private $thirdFunction;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $thirdFunctionParameters;
/**
* @ORM\Column(type="json", nullable=true, options={"comment":"Icône CSS type fontAwesome"})
*/
private $iconClass;
/**
* @ORM\Column(type="text", nullable=true, options={"comment":"Exemple de rendu front-end"})
*/
private $example;
/**
* @MaxDepth (1)
* @var \Media|null
* @ORM\ManyToOne (targetEntity="App\Entity\Media", inversedBy="blockFields")
* @ORM\JoinColumns ({
* @ORM\JoinColumn(name="media_id", referencedColumnName="id")
* })
*/
#[ApiProperty(iris: ['http://schema.org/image'])]
private $image;
/**
* @MaxDepth(1)
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="blockFieldItems")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="owner_id", referencedColumnName="id")
* })
*/
private $owner;
/**
* @MaxDepth(1)
* @ORM\ManyToOne(targetEntity="App\Entity\DnsitEntity", inversedBy="blockFieldItems")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="entity_id", referencedColumnName="id")
* })
*/
private $entity;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $createdAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @ORM\Column(type="integer", nullable=true, options={"default":0, "comment":"code de statut : 0=OK"})
*/
private $state;
/**
* @ORM\Column(type="string", length=255, nullable=true, options={"comment":"ET ou OU logique, null = OU"})
*/
private $conditionEtOu;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $extraData;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $dateTimeFormat;
/**
* @ORM\Column(type="integer", nullable=true, options={"default":0, "comment":"Limiter l'affichage à X sous-items"})
*/
private $maxSubItemsToDisplay;
/**
* @ORM\Column(type="boolean", nullable=true, options={"default":0, "comment":"Si plusieurs valeurs min et max, ne montrer que le plus pett mini et le plus grand maxi"})
*/
private $showOnlyLowestMinAndHighestMax;
public function getId() : ?int
{
return $this->id;
}
public function getItemType() : ?array
{
return $this->itemType;
}
public function setItemType(?array $itemType) : self
{
$this->itemType = $itemType;
return $this;
}
public function getLabel() : ?string
{
return $this->label;
}
public function setLabel(?string $label) : self
{
$this->label = $label;
return $this;
}
public function getLabelTranslations() : ?array
{
return $this->labelTranslations;
}
public function setLabelTranslations(?array $labelTranslations) : self
{
$this->labelTranslations = $labelTranslations;
return $this;
}
public function getIconClass() : ?array
{
return $this->iconClass;
}
public function setIconClass(?array $iconClass) : self
{
$this->iconClass = $iconClass;
return $this;
}
public function getCreatedAt() : ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(?\DateTimeInterface $createdAt) : self
{
$this->createdAt = $createdAt;
return $this;
}
public function getUpdatedAt() : ?\DateTimeInterface
{
return $this->updatedAt;
}
public function setUpdatedAt(?\DateTimeInterface $updatedAt) : self
{
$this->updatedAt = $updatedAt;
return $this;
}
public function getState() : ?int
{
return $this->state;
}
public function setState(?int $state) : self
{
$this->state = $state;
return $this;
}
public function getBlockField() : ?BlockField
{
return $this->blockField;
}
public function setBlockField(?BlockField $blockField) : self
{
$this->blockField = $blockField;
return $this;
}
public function getFirstFunction() : ?string
{
return $this->firstFunction;
}
public function setFirstFunction(?string $firstFunction) : self
{
$this->firstFunction = $firstFunction;
return $this;
}
public function getSecondFunction() : ?string
{
return $this->secondFunction;
}
public function setSecondFunction(?string $secondFunction) : self
{
$this->secondFunction = $secondFunction;
return $this;
}
public function getThirdFunction() : ?string
{
return $this->thirdFunction;
}
public function setThirdFunction(?string $thirdFunction) : self
{
$this->thirdFunction = $thirdFunction;
return $this;
}
public function getImage() : ?Media
{
return $this->image;
}
public function setImage(?Media $image) : self
{
$this->image = $image;
return $this;
}
public function getOwner() : ?User
{
return $this->owner;
}
public function setOwner(?User $owner) : self
{
$this->owner = $owner;
return $this;
}
public function getEntity() : ?DnsitEntity
{
return $this->entity;
}
public function setEntity(?DnsitEntity $entity) : self
{
$this->entity = $entity;
return $this;
}
public function getOrdering() : ?int
{
return $this->ordering;
}
public function setOrdering(int $ordering) : self
{
$this->ordering = $ordering;
return $this;
}
public function getCriterion() : ?array
{
return $this->criterion;
}
public function setCriterion(?array $criterion) : self
{
$this->criterion = $criterion;
return $this;
}
public function getDisplayConditions() : ?array
{
return $this->displayConditions;
}
public function setDisplayConditions(?array $displayConditions) : self
{
$this->displayConditions = $displayConditions;
return $this;
}
public function getModality() : ?array
{
return $this->modality;
}
public function setModality(?array $modality) : self
{
$this->modality = $modality;
return $this;
}
public function getExample() : ?string
{
return $this->example;
}
public function setExample(?string $example) : self
{
$this->example = $example;
return $this;
}
public function getDisplayCriterionName() : ?bool
{
return $this->displayCriterionName;
}
public function setDisplayCriterionName(?bool $displayCriterionName) : self
{
$this->displayCriterionName = $displayCriterionName;
return $this;
}
public function getDisplayModalityName() : ?bool
{
return $this->displayModalityName;
}
public function setDisplayModalityName(?bool $displayModalityName) : self
{
$this->displayModalityName = $displayModalityName;
return $this;
}
public function getDisplayCriterionValue() : ?bool
{
return $this->displayCriterionValue;
}
public function setDisplayCriterionValue(?bool $displayCriterionValue) : self
{
$this->displayCriterionValue = $displayCriterionValue;
return $this;
}
public function getFirstFunctionParameters() : ?array
{
return $this->firstFunctionParameters;
}
public function setFirstFunctionParameters(?array $firstFunctionParameters) : self
{
$this->firstFunctionParameters = $firstFunctionParameters;
return $this;
}
public function getSecondFunctionParameters() : ?array
{
return $this->secondFunctionParameters;
}
public function setSecondFunctionParameters(?array $secondFunctionParameters) : self
{
$this->secondFunctionParameters = $secondFunctionParameters;
return $this;
}
public function getThirdFunctionParameters() : ?array
{
return $this->thirdFunctionParameters;
}
public function setThirdFunctionParameters(?array $thirdFunctionParameters) : self
{
$this->thirdFunctionParameters = $thirdFunctionParameters;
return $this;
}
public function getConditionEtOu() : ?string
{
return $this->conditionEtOu;
}
public function setConditionEtOu(?string $conditionEtOu) : self
{
$this->conditionEtOu = $conditionEtOu;
return $this;
}
public function getExtraData() : ?array
{
return $this->extraData;
}
public function setExtraData(?array $extraData) : self
{
$this->extraData = $extraData;
return $this;
}
public function getDateTimeFormat() : ?array
{
return $this->dateTimeFormat;
}
public function setDateTimeFormat(?array $dateTimeFormat) : self
{
$this->dateTimeFormat = $dateTimeFormat;
return $this;
}
public function getMaxSubItemsToDisplay() : ?int
{
return $this->maxSubItemsToDisplay;
}
public function setMaxSubItemsToDisplay(?int $maxSubItemsToDisplay) : self
{
$this->maxSubItemsToDisplay = $maxSubItemsToDisplay;
return $this;
}
public function getShowOnlyLowestMinAndHighestMax() : ?bool
{
return $this->showOnlyLowestMinAndHighestMax;
}
public function setShowOnlyLowestMinAndHighestMax(?bool $showOnlyLowestMinAndHighestMax) : self
{
$this->showOnlyLowestMinAndHighestMax = $showOnlyLowestMinAndHighestMax;
return $this;
}
}