@@ -59,7 +59,16 @@ impl Data {
59
59
self . teams
60
60
. into_iter ( )
61
61
. 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
+ } )
63
72
. map ( |team| IndexTeam {
64
73
url : format ! (
65
74
"{}/{}" ,
@@ -99,9 +108,11 @@ impl Data {
99
108
100
109
// Don't show pages for subteams
101
110
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" ) {
105
116
return Err ( TeamNotFound . into ( ) ) ;
106
117
}
107
118
}
@@ -120,6 +131,9 @@ impl Data {
120
131
121
132
self . teams
122
133
. 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" )
123
137
. filter ( |team| team. website_data . is_some ( ) )
124
138
. filter ( |team| {
125
139
// For teams find not only direct subteams but also transitive ones.
0 commit comments