@@ -67,8 +67,9 @@ public function getScoreboard(
6767 if (!$ freezeData ->started () && !$ jury && !$ forceUnfrozen ) {
6868 return null ;
6969 }
70+ $ restricted = ($ jury || $ freezeData ->showFinal (false ));
7071
71- $ teams = $ this ->getTeamsInOrder ($ contest , $ jury && !$ visibleOnly , $ filter );
72+ $ teams = $ this ->getTeamsInOrder ($ contest , $ jury && !$ visibleOnly , $ filter, $ restricted );
7273 $ problems = $ this ->getProblems ($ contest );
7374 $ categories = $ this ->getCategories ($ jury && !$ visibleOnly );
7475 $ scoreCache = $ this ->getScorecache ($ contest );
@@ -95,7 +96,7 @@ public function getTeamScoreboard(Contest $contest, int $teamId, bool $showFtsIn
9596 {
9697 $ freezeData = new FreezeData ($ contest );
9798
98- $ teams = $ this ->getTeamsInOrder ($ contest , true , new Filter ([], [], [], [$ teamId ]));
99+ $ teams = $ this ->getTeamsInOrder ($ contest , true , new Filter ([], [], [], [$ teamId ]), true );
99100 if (empty ($ teams )) {
100101 return null ;
101102 }
@@ -944,7 +945,7 @@ public function getScoreboardTwigData(
944945 * Get the teams to display on the scoreboard, returns them in order.
945946 * @return Team[]
946947 */
947- protected function getTeamsInOrder (Contest $ contest , bool $ jury = false , ?Filter $ filter = null ): array
948+ protected function getTeamsInOrder (Contest $ contest , bool $ jury = false , ?Filter $ filter = null , bool $ restricted = false ): array
948949 {
949950 $ queryBuilder = $ this ->em ->createQueryBuilder ()
950951 ->from (Team::class, 't ' , 't.teamid ' )
@@ -1005,7 +1006,7 @@ protected function getTeamsInOrder(Contest $contest, bool $jury = false, ?Filter
10051006
10061007 $ ret = $ queryBuilder
10071008 ->addOrderBy ('tc.sortorder ' )
1008- ->addOrderBy ('r.sortKey ' . ($ jury ? 'Restricted ' : 'Public ' ), 'DESC ' )
1009+ ->addOrderBy ('r.sortKey ' . ($ restricted ? 'Restricted ' : 'Public ' ), 'DESC ' )
10091010 ->addOrderBy ('effectivename ' )
10101011 ->getQuery ()->getResult ();
10111012 return $ ret ;
0 commit comments