@@ -59,7 +59,16 @@ impl Data {
5959 self . teams
6060 . into_iter ( )
6161 . filter ( |team| team. website_data . is_some ( ) )
62- . filter ( |team| matches ! ( team. subteam_of. as_deref( ) , None | Some ( "launching-pad" ) ) )
62+ // On the main page, show the leadership-council, all top-level
63+ // teams, and everything in the launching pad. We may want to
64+ // consider putting launching pad teams in a separate page in the
65+ // future?
66+ . filter ( |team| {
67+ matches ! (
68+ team. subteam_of. as_deref( ) ,
69+ None | Some ( "launching-pad" ) | Some ( "leadership-council" )
70+ )
71+ } )
6372 . map ( |team| IndexTeam {
6473 url : format ! (
6574 "{}/{}" ,
@@ -99,9 +108,11 @@ impl Data {
99108
100109 // Don't show pages for subteams
101110 if let Some ( subteam) = & main_team. subteam_of {
102- // Launching-pad does not have a page of its own, but we do want
103- // to show the working groups that are inside it.
104- if subteam != "launching-pad" {
111+ // Each launching-pad and leadership-council subteam has their own
112+ // page. Subteams of those subteams do not get a page of their own
113+ // (they are shown in their parent page). We may want to consider
114+ // putting launching-pad teams into a separate page in the future.
115+ if !matches ! ( subteam. as_ref( ) , "launching-pad" | "leadership-council" ) {
105116 return Err ( TeamNotFound . into ( ) ) ;
106117 }
107118 }
@@ -120,6 +131,9 @@ impl Data {
120131
121132 self . teams
122133 . into_iter ( )
134+ // The leadership-council page should show just the
135+ // leadership-council, not everything underneath it.
136+ . filter ( |_| main_team. name != "leadership-council" )
123137 . filter ( |team| team. website_data . is_some ( ) )
124138 . filter ( |team| {
125139 // For teams find not only direct subteams but also transitive ones.
0 commit comments