X-Git-Url: https://git.rapsys.eu/.gitweb.cgi/airbundle/blobdiff_plain/68663463f2ad060a95d809454e8f035dc0496cf5..92c7d76b4d1e2c3b7e3edf68269bac37584bab09:/Entity/Application.php diff --git a/Entity/Application.php b/Entity/Application.php index 2e8cca5..5d31203 100644 --- a/Entity/Application.php +++ b/Entity/Application.php @@ -1,7 +1,18 @@ - + * + * for the full copyright and license information, please view the license + * file that was distributed with this source code. + */ namespace Rapsys\AirBundle\Entity; +use Doctrine\ORM\Event\PreUpdateEventArgs; + /** * Application */ @@ -11,6 +22,11 @@ class Application { */ private $id; + /** + * @var Dance + */ + private $dance; + /** * @var float */ @@ -31,11 +47,6 @@ class Application { */ private $updated; - /** - * @var \Doctrine\Common\Collections\Collection - */ - private $votes; - /** * @var \Rapsys\AirBundle\Entity\Session */ @@ -50,7 +61,13 @@ class Application { * Constructor */ public function __construct() { - $this->votes = new \Doctrine\Common\Collections\ArrayCollection(); + //Set defaults + $this->score = null; + $this->canceled = null; + $this->created = new \DateTime('now'); + $this->updated = new \DateTime('now'); + $this->session = null; + $this->user = null; } /** @@ -58,10 +75,32 @@ class Application { * * @return integer */ - public function getId() { + public function getId(): int { return $this->id; } + /** + * Set dance + * + * @param Dance $dance + * + * @return Application + */ + public function setDance(Dance $dance): Application { + $this->dance = $dance; + + return $this; + } + + /** + * Get dance + * + * @return Dance + */ + public function getDance(): Dance { + return $this->dance; + } + /** * Set score * @@ -69,7 +108,7 @@ class Application { * * @return Application */ - public function setScore($score) { + public function setScore(?float $score): Application { $this->score = $score; return $this; @@ -80,7 +119,7 @@ class Application { * * @return float */ - public function getScore() { + public function getScore(): ?float { return $this->score; } @@ -91,7 +130,7 @@ class Application { * * @return Application */ - public function setCanceled($canceled) { + public function setCanceled(?\DateTime $canceled): Application { $this->canceled = $canceled; return $this; @@ -102,7 +141,7 @@ class Application { * * @return \DateTime */ - public function getCanceled() { + public function getCanceled(): ?\DateTime { return $this->canceled; } @@ -113,7 +152,7 @@ class Application { * * @return Application */ - public function setCreated($created) { + public function setCreated(\DateTime $created): Application { $this->created = $created; return $this; @@ -124,7 +163,7 @@ class Application { * * @return \DateTime */ - public function getCreated() { + public function getCreated(): \DateTime { return $this->created; } @@ -135,7 +174,7 @@ class Application { * * @return Application */ - public function setUpdated($updated) { + public function setUpdated(\DateTime $updated): Application { $this->updated = $updated; return $this; @@ -146,49 +185,18 @@ class Application { * * @return \DateTime */ - public function getUpdated() { + public function getUpdated(): \DateTime { return $this->updated; } - /** - * Add vote - * - * @param \Rapsys\AirBundle\Entity\Vote $vote - * - * @return Application - */ - public function addVote(\Rapsys\AirBundle\Entity\Vote $vote) { - $this->votes[] = $vote; - - return $this; - } - - /** - * Remove vote - * - * @param \Rapsys\AirBundle\Entity\Vote $vote - */ - public function removeVote(\Rapsys\AirBundle\Entity\Vote $vote) { - $this->votes->removeElement($vote); - } - - /** - * Get votes - * - * @return \Doctrine\Common\Collections\Collection - */ - public function getVotes() { - return $this->votes; - } - /** * Set session * - * @param \Rapsys\AirBundle\Entity\Session $session + * @param Session $session * * @return Application */ - public function setSession(\Rapsys\AirBundle\Entity\Session $session = null) { + public function setSession(Session $session): Application { $this->session = $session; return $this; @@ -197,20 +205,20 @@ class Application { /** * Get session * - * @return \Rapsys\AirBundle\Entity\Session + * @return Session */ - public function getSession() { + public function getSession(): Session { return $this->session; } /** * Set user * - * @param \Rapsys\AirBundle\Entity\User $user + * @param User $user * * @return Application */ - public function setUser(\Rapsys\AirBundle\Entity\User $user = null) { + public function setUser(User $user): Application { $this->user = $user; return $this; @@ -219,9 +227,20 @@ class Application { /** * Get user * - * @return \Rapsys\AirBundle\Entity\User + * @return User */ - public function getUser() { + public function getUser(): User { return $this->user; } + + /** + * {@inheritdoc} + */ + public function preUpdate(PreUpdateEventArgs $eventArgs) { + //Check that we have an application instance + if (($application = $eventArgs->getEntity()) instanceof Application) { + //Set updated value + $application->setUpdated(new \DateTime('now')); + } + } }