X-Git-Url: https://git.rapsys.eu/airbundle/blobdiff_plain/0efb8d5485db7c2bfca8a1fef10067f058b54e1a..2884b5c8b4514b0e1c0dd0449db2af5be32382b6:/Entity/Snippet.php diff --git a/Entity/Snippet.php b/Entity/Snippet.php index 20a1940..dea8897 100644 --- a/Entity/Snippet.php +++ b/Entity/Snippet.php @@ -1,80 +1,101 @@ - + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ namespace Rapsys\AirBundle\Entity; -use Rapsys\AirBundle\Entity\Location; -use Rapsys\AirBundle\Entity\User; +use Doctrine\ORM\Event\PreUpdateEventArgs; /** * Snippet */ class Snippet { /** - * @var integer + * Primary key */ - private $id; + private ?int $id = null; /** * @var string */ - protected $locale; + private ?string $description = null; /** * @var string */ - protected $description; + private ?string $class = null; /** * @var string */ - protected $class; + private ?string $short = null; /** - * @var string + * @var integer + */ + private ?int $rate = null; + + /** + * @var bool */ - protected $contact; + private ?bool $hat = null; /** * @var string */ - protected $donate; + private ?string $contact = null; /** * @var string */ - protected $link; + private ?string $donate = null; /** * @var string */ - protected $profile; + private ?string $link = null; /** - * @var \DateTime + * @var string */ - protected $created; + private ?string $profile = null; /** - * @var \DateTime + * Create datetime */ - protected $updated; + private \DateTime $created; /** - * @var \Rapsys\UserBundle\Entity\Location + * Update datetime */ - protected $location; + private \DateTime $updated; /** - * @var \Rapsys\UserBundle\Entity\User + * Constructor + * + * @param string $locale The locale + * @param Location $location The location instance + * @param User $user The user instance */ - protected $user; + public function __construct(private string $locale, private Location $location, private User $user) { + //Set defaults + $this->created = new \DateTime('now'); + $this->updated = new \DateTime('now'); + } /** * Get id * * @return integer */ - public function getId() { + public function getId(): ?int { return $this->id; } @@ -85,7 +106,7 @@ class Snippet { * * @return Snippet */ - public function setLocale($locale) { + public function setLocale(string $locale): Snippet { $this->locale = $locale; return $this; @@ -96,7 +117,7 @@ class Snippet { * * @return string */ - public function getLocale() { + public function getLocale(): string { return $this->locale; } @@ -107,7 +128,7 @@ class Snippet { * * @return Snippet */ - public function setDescription($description) { + public function setDescription(?string $description): Snippet { $this->description = $description; return $this; @@ -118,7 +139,7 @@ class Snippet { * * @return string */ - public function getDescription() { + public function getDescription(): ?string { return $this->description; } @@ -129,7 +150,7 @@ class Snippet { * * @return Snippet */ - public function setClass($class) { + public function setClass(?string $class): Snippet { $this->class = $class; return $this; @@ -140,10 +161,75 @@ class Snippet { * * @return string */ - public function getClass() { + public function getClass(): ?string { return $this->class; } + /** + * Set short + * + * @param string $short + * + * @return Snippet + */ + public function setShort(?string $short): Snippet { + $this->short = $short; + + return $this; + } + + /** + * Get short + * + * @return string + */ + public function getShort(): ?string { + return $this->short; + } + + /** + * Set rate + * + * @param int $rate + * + * @return Snippet + */ + public function setRate(?int $rate): Snippet { + $this->rate = $rate; + + return $this; + } + + /** + * Get rate + * + * @return int + */ + public function getRate(): ?int { + return $this->rate; + } + + /** + * Set hat + * + * @param bool $hat + * + * @return User + */ + public function setHat(?bool $hat): Snippet { + $this->hat = $hat; + + return $this; + } + + /** + * Get hat + * + * @return bool + */ + public function getHat(): ?bool { + return $this->hat; + } /** * Set contact * @@ -151,7 +237,7 @@ class Snippet { * * @return Snippet */ - public function setContact($contact) { + public function setContact(?string $contact): Snippet { $this->contact = $contact; return $this; @@ -162,7 +248,7 @@ class Snippet { * * @return string */ - public function getContact() { + public function getContact(): ?string { return $this->contact; } @@ -173,7 +259,7 @@ class Snippet { * * @return Snippet */ - public function setDonate($donate) { + public function setDonate(?string $donate): Snippet { $this->donate = $donate; return $this; @@ -184,7 +270,7 @@ class Snippet { * * @return string */ - public function getDonate() { + public function getDonate(): ?string { return $this->donate; } @@ -195,7 +281,7 @@ class Snippet { * * @return Snippet */ - public function setLink($link) { + public function setLink(?string $link): Snippet { $this->link = $link; return $this; @@ -206,7 +292,7 @@ class Snippet { * * @return string */ - public function getLink() { + public function getLink(): ?string { return $this->link; } @@ -217,7 +303,7 @@ class Snippet { * * @return Snippet */ - public function setProfile($profile) { + public function setProfile(?string $profile): Snippet { $this->profile = $profile; return $this; @@ -228,7 +314,7 @@ class Snippet { * * @return string */ - public function getProfile() { + public function getProfile(): ?string { return $this->profile; } @@ -239,7 +325,7 @@ class Snippet { * * @return Snippet */ - public function setCreated($created) { + public function setCreated(\DateTime $created): Snippet { $this->created = $created; return $this; @@ -250,7 +336,7 @@ class Snippet { * * @return \DateTime */ - public function getCreated() { + public function getCreated(): \DateTime { return $this->created; } @@ -261,7 +347,7 @@ class Snippet { * * @return Snippet */ - public function setUpdated($updated) { + public function setUpdated(\DateTime $updated): Snippet { $this->updated = $updated; return $this; @@ -272,7 +358,7 @@ class Snippet { * * @return \DateTime */ - public function getUpdated() { + public function getUpdated(): \DateTime { return $this->updated; } @@ -283,7 +369,7 @@ class Snippet { * * @return Snippet */ - public function setLocation(Location $location) { + public function setLocation(Location $location): Snippet { $this->location = $location; return $this; @@ -294,7 +380,7 @@ class Snippet { * * @return Location */ - public function getLocation() { + public function getLocation(): Location { return $this->location; } @@ -305,7 +391,7 @@ class Snippet { * * @return Snippet */ - public function setUser(User $user) { + public function setUser(User $user): Snippet { $this->user = $user; return $this; @@ -316,7 +402,18 @@ class Snippet { * * @return User */ - public function getUser() { + public function getUser(): User { return $this->user; } + + /** + * {@inheritdoc} + */ + public function preUpdate(PreUpdateEventArgs $eventArgs) { + //Check that we have an snippet instance + if (($snippet = $eventArgs->getObject()) instanceof Snippet) { + //Set updated value + $snippet->setUpdated(new \DateTime('now')); + } + } }