Commit 8de8b8e9 authored by Thomas Hamel's avatar Thomas Hamel
Browse files

modification de l'algo récupérant les années univ du filtre des écrans Session/Formation

parent 5b33e89a
Loading
Loading
Loading
Loading
+6 −12
Changes for module/Formation/src/Formation/Service/Formation/Search/FormationSearchService.php: 6 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -173,20 +173,14 @@ class FormationSearchService extends SearchService

    private function fetchAnneesUniv(SelectSearchFilter $filter): array
    {
        $anneeUnivCourante = $this->anneeUnivService->courante();
        $anneeCourante = new \DateTime();
        $anneeCourante = $anneeCourante->format('Y');
        $annees = $this->formationRepository->fetchDistinctAnneesUnivFormation();

        $formations = $this->formationRepository->findAll();
        $anneesUniv = [];
        foreach($annees as $annee){
            if (! is_numeric($annee))  continue;

            if($anneeCourante === $annee){
                if(!in_array($anneeUnivCourante, $anneesUniv)) $anneesUniv[] =  $anneeUnivCourante;
                continue;
        foreach ($formations as $formation) {
            $sessions = $formation->getSessions()->toArray();
            foreach ($sessions as $session) {
                $anneeUniv = $session->getDateDebut() ? $this->anneeUnivService->fromDate($session->getDateDebut()) : $this->anneeUnivService->courante();
                if(!isset($anneesUniv[$anneeUniv->getPremiereAnnee()])) $anneesUniv[$anneeUniv->getPremiereAnnee()] = $anneeUniv->getAnneeUnivToString();
            }
            $anneesUniv[$annee] = AnneeUniv::fromPremiereAnnee($annee);
        }

        return $anneesUniv;
+4 −13
Changes for module/Formation/src/Formation/Service/Session/Search/SessionSearchService.php: 4 added lines, 13 removed lines.
Original line number Diff line number Diff line
@@ -197,20 +197,11 @@ class SessionSearchService extends SearchService

    private function fetchAnneesUniv(SelectSearchFilter $filter): array
    {
        $anneeUnivCourante = $this->anneeUnivService->courante();
        $anneeCourante = new \DateTime();
        $anneeCourante = $anneeCourante->format('Y');
        $annees = $this->sessionRepository->fetchDistinctAnneesUnivSessions();

        $sessions = $this->sessionRepository->findAll();
        $anneesUniv = [];
        foreach($annees as $annee){
            if (! is_numeric($annee))  continue;

            if($anneeCourante === $annee){
                if(!in_array($anneeUnivCourante, $anneesUniv)) $anneesUniv[] =  $anneeUnivCourante;
                continue;
            }
            $anneesUniv[$annee] = AnneeUniv::fromPremiereAnnee($annee);
        foreach ($sessions as $session) {
            $anneeUniv = $session->getDateDebut() ? $this->anneeUnivService->fromDate($session->getDateDebut()) : $this->anneeUnivService->courante();
            if(!isset($anneesUniv[$anneeUniv->getPremiereAnnee()])) $anneesUniv[$anneeUniv->getPremiereAnnee()] = $anneeUniv->getAnneeUnivToString();
        }

        return $anneesUniv;