]> git.rustad.me Git - duplo/commitdiff
Show current standings
authorBjørn Rustad <rustadbjornen@gmail.com>
Tue, 20 Aug 2013 21:15:16 +0000 (23:15 +0200)
committerBjørn Rustad <rustadbjornen@gmail.com>
Tue, 20 Aug 2013 21:15:16 +0000 (23:15 +0200)
lib/Duplo/Race.pm
templates/race/race.html.ep

index ba6f615b3a9ed49fdc68d0a35b6a5672f24db025..329fa2aa0c25ff2c25cb850a3c8de803fcd0145c 100644 (file)
@@ -114,6 +114,27 @@ sub race {
                AND
                  \"user\" = ?
                ", undef, $race, $user);
+
+       my $standings_ref = $dbh->selectall_arrayref("
+               SELECT
+                 foo.race,
+                 mt.manager_team,
+                 mt.name,
+                 SUM(points) AS sum
+               FROM (
+                 SELECT
+                   stage.race,
+                   manager_team,
+                   (stage_team(stage, manager_team)).points
+                 FROM stage, manager_team
+                 WHERE stage.race = ?
+               ) AS foo
+               JOIN
+                 manager_team AS mt
+               ON (foo.manager_team = mt.manager_team)
+               GROUP BY foo.race, mt.manager_team
+               ORDER BY sum DESC
+               ", { Slice => {} }, $race);
                
        return $self->render(
                race      => $race_ref,
@@ -123,6 +144,7 @@ sub race {
                my_team   => $my_team_ref,
                riders    => $riders_ref,
                directors => $directors_ref,
+               standings => $standings_ref,
        );
 }
 
index 73fcfe97fa6b1c322bbc22a66e6a284d1d428c47..b21839ff0e5e9055fda5c2c4aef7846d88ee34e4 100644 (file)
 </p>
 % }
 
+<h3>Standings</h3>
+<ul>
+% for my $t (@{ $standings }) {
+<li><%= $t->{'name'} %> – <%= $t->{'sum'} %></li>
+% }
+</ul>
+
 <h3>Stages</h3>
 <table class="table table-condensed">
   % my $num = 1;