public function getSeasonWithPerimeterAndSeasonId(Perimeter $perimeter, $seasonId) { $season = null; if ($seasonId) { $season = $this->find($seasonId); } if (!$season) { $season = new SeasonEntity(); $season->setPerimeter($perimeter); } return $season; }
private function createSeason(ObjectManager $em, $perimeter) { $season = new Season(); $season->setPerimeter($perimeter); $season->setTitle('hiver 2014'); $season->setStartDate(\DateTime::createFromFormat('d/m/Y', '21/12/2013')); $season->setEndDate(\DateTime::createFromFormat('d/m/Y', '21/03/2014')); $season->setPublished(TRUE); $em->persist($season); return $season; }
private function getSeasonLink(Season $season) { $seasonManageUrl = $this->router->generate('canal_tp_mtt_season_list', array('externalNetworkId' => $season->getPerimeter()->getExternalNetworkId())); return '<a href="' . $seasonManageUrl . '">' . $season->getTitle() . '</a>'; }
/** * Check if calendar is valid during a season (even a minimal amount of time) */ public function isIncluded($calendarId, Season $season) { $externalCoverageId = $season->getPerimeter()->getExternalCoverageId(); $calendarsData = $this->navitia->getCalendar($externalCoverageId, $calendarId); $calendar = $calendarsData->calendars[0]; $calendarBeginDate = new \DateTime($calendar->active_periods[0]->begin); $calendarEndDate = new \DateTime($calendar->active_periods[0]->end); if ($season->getStartDate() < $calendarBeginDate && $calendarBeginDate < $season->getEndDate() || $season->getStartDate() < $calendarEndDate && $calendarEndDate < $season->getEndDate()) { return true; } return false; }