diff --git a/site/blueprints/pages/event.yml b/site/blueprints/pages/event.yml index 63b63ef..551c87a 100644 --- a/site/blueprints/pages/event.yml +++ b/site/blueprints/pages/event.yml @@ -129,11 +129,6 @@ tabs: label: Places disponibles type: text width: 1/4 - hideSessionsOnHome: - label: Ne pas afficher les séances sur la page d'accueil - type: toggle - default: false - help: Si l'option est active, dans le calendrier de la page d'accueil l'événement sera affiché sans le détail des différentes séances. - width: 1/1 fields: line: @@ -197,6 +192,12 @@ tabs: label: Réglages icon: cog fields: + hideSessionsOnHome: + label: Ne pas afficher les séances sur la page d'accueil + type: toggle + default: false + help: Si l'option est active, dans le calendrier de la page d'accueil l'événement sera affiché sans le détail des différentes séances. + width: 1/2 mapadoLine: type: line isMapadoEvent: diff --git a/site/collections/ordered-season.php b/site/collections/ordered-season.php index 6b77b92..8a83b29 100644 --- a/site/collections/ordered-season.php +++ b/site/collections/ordered-season.php @@ -14,8 +14,16 @@ return function($kirby) { } } - // Trier les événements en fonction de la date la plus proche - $orderedSeason = $orderedSeason->sortBy(function ($event) { + + $normalEvents = $orderedSeason->filter(function ($event) { + return $event->status() === 'listed'; + }); + + $endOfProgramEvents = $orderedSeason->filter(function ($event) { + return $event->status() === 'unlisted'; + }); + + $normalEvents = $normalEvents->sortBy(function ($event) { $sessions = $event->isMapadoEvent() == 'true' ? $event->remoteSessions()->toStructure() : $event->sessions()->toStructure(); $sessionDates = $sessions->map(function($session) { @@ -25,5 +33,7 @@ return function($kirby) { return min($sessionDates); }); + $orderedSeason = $normalEvents->merge($endOfProgramEvents); + return $orderedSeason; };