From d5bd324573e322017f2269df1f9d1665135a341b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rapha=C3=ABl=20Gertz?= Date: Tue, 8 Dec 2020 01:26:10 +0100 Subject: [PATCH 1/1] Add start, stop, premium, rainfall, rainrisk, realfeel, realfeelmin, realfeelmax, temperature, temperaturemin, temperaturemax fields Add start and stop getter Add premium, rainfall, rainrisk, realfeel, realfeelmin, realfeelmax, temperature, temperaturemin, temperaturemax getters and setters --- Entity/Session.php | 295 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 295 insertions(+) diff --git a/Entity/Session.php b/Entity/Session.php index 6a0f138..e2ffc7a 100644 --- a/Entity/Session.php +++ b/Entity/Session.php @@ -21,11 +21,66 @@ class Session { */ private $begin; + /** + * @var \DateTime + */ + private $start = null; + /** * @var \DateTime */ private $length; + /** + * @var \DateTime + */ + private $stop = null; + + /** + * @var boolean + */ + private $premium; + + /** + * @var float + */ + private $rainfall; + + /** + * @var float + */ + private $rainrisk; + + /** + * @var float + */ + private $realfeel; + + /** + * @var float + */ + private $realfeelmin; + + /** + * @var float + */ + private $realfeelmax; + + /** + * @var integer + */ + private $temperature; + + /** + * @var integer + */ + private $temperaturemin; + + /** + * @var integer + */ + private $temperaturemax; + /** * @var \DateTime */ @@ -116,6 +171,30 @@ class Session { return $this->begin; } + /** + * Get start + * + * @return \DateTime + */ + public function getStart() { + //Check start + if ($this->start !== null) { + return $this->start; + } + + //Clone date + $this->start = clone $this->date; + + //Check if after slot + if ($this->slot->getTitle() == 'After') { + //Add one day + $this->start->add(new \DateInterval('P1D')); + } + + //Return date + return $this->start->setTime($this->begin->format('H'), $this->begin->format('i'), $this->begin->format('s')); + } + /** * Set length * @@ -138,6 +217,222 @@ class Session { return $this->length; } + /** + * Get stop + * + * @return \DateTime + */ + public function getStop() { + //Check start + if ($this->stop !== null) { + return $this->stop; + } + + //Get start clone + $this->stop = clone $this->getStart(); + + //Return date + return $this->stop->add(new \DateInterval('PT'.$this->length->format('H').'H'.$this->length->format('i').'M'.$this->length->format('s').'S')); + } + + /** + * Set premium + * + * @param boolean $premium + * + * @return Session + */ + public function setPremium($premium) { + $this->premium = $premium; + + return $this; + } + + /** + * Get premium + * + * @return boolean + */ + public function getPremium() { + return $this->premium; + } + + /** + * Set rainfall + * + * @param boolean $rainfall + * + * @return Session + */ + public function setRainfall($rainfall) { + $this->rainfall = $rainfall; + + return $this; + } + + /** + * Get rainfall + * + * @return boolean + */ + public function getRainfall() { + return $this->rainfall; + } + + /** + * Set rainrisk + * + * @param boolean $rainrisk + * + * @return Session + */ + public function setRainrisk($rainrisk) { + $this->rainrisk = $rainrisk; + + return $this; + } + + /** + * Get rainrisk + * + * @return boolean + */ + public function getRainrisk() { + return $this->rainrisk; + } + + /** + * Set realfeel + * + * @param integer $realfeel + * + * @return Session + */ + public function setRealfeel($realfeel) { + $this->realfeel = $realfeel; + + return $this; + } + + /** + * Get realfeel + * + * @return integer + */ + public function getRealfeel() { + return $this->realfeel; + } + + /** + * Set realfeelmin + * + * @param integer $realfeelmin + * + * @return Session + */ + public function setRealfeelmin($realfeelmin) { + $this->realfeelmin = $realfeelmin; + + return $this; + } + + /** + * Get realfeelmin + * + * @return integer + */ + public function getRealfeelmin() { + return $this->realfeelmin; + } + + /** + * Set realfeelmax + * + * @param integer $realfeelmax + * + * @return Session + */ + public function setRealfeelmax($realfeelmax) { + $this->realfeelmax = $realfeelmax; + + return $this; + } + + /** + * Get realfeelmax + * + * @return integer + */ + public function getRealfeelmax() { + return $this->realfeelmax; + } + + /** + * Set temperature + * + * @param integer $temperature + * + * @return Session + */ + public function setTemperature($temperature) { + $this->temperature = $temperature; + + return $this; + } + + /** + * Get temperature + * + * @return integer + */ + public function getTemperature() { + return $this->temperature; + } + + /** + * Set temperaturemin + * + * @param integer $temperaturemin + * + * @return Session + */ + public function setTemperaturemin($temperaturemin) { + $this->temperaturemin = $temperaturemin; + + return $this; + } + + /** + * Get temperaturemin + * + * @return integer + */ + public function getTemperaturemin() { + return $this->temperaturemin; + } + + /** + * Set temperaturemax + * + * @param integer $temperaturemax + * + * @return Session + */ + public function setTemperaturemax($temperaturemax) { + $this->temperaturemax = $temperaturemax; + + return $this; + } + + /** + * Get temperaturemax + * + * @return integer + */ + public function getTemperaturemax() { + return $this->temperaturemax; + } + /** * Set created * -- 2.41.1