X-Git-Url: https://git.rapsys.eu/.gitweb.cgi/airbundle/blobdiff_plain/af2a5ccc05e664274d24ee8711d398d7dec8808d..abe596a222241e0bd164244bb71ebcfa828d1c71:/Entity/Session.php?ds=sidebyside

diff --git a/Entity/Session.php b/Entity/Session.php
index 6a0f138..e746171 100644
--- a/Entity/Session.php
+++ b/Entity/Session.php
@@ -21,11 +21,71 @@ 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
+	 */
+	private $locked;
+
 	/**
 	 * @var \DateTime
 	 */
@@ -116,6 +176,31 @@ 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
+		//XXX: id=4 <=> title=After
+		if ($this->slot->getId() == 4) {
+			//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 +223,244 @@ 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 locked
+	 *
+	 * @param \DateTime $locked
+	 *
+	 * @return Session
+	 */
+	public function setLocked($locked) {
+		$this->locked = $locked;
+
+		return $this;
+	}
+
+	/**
+	 * Get locked
+	 *
+	 * @return \DateTime
+	 */
+	public function getLocked() {
+		return $this->locked;
+	}
+
 	/**
 	 * Set created
 	 *