summaryrefslogtreecommitdiff
path: root/index.pl
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2015-03-07 23:40:37 +0100
committerDaniel Friesel <derf@finalrewind.org>2015-03-07 23:40:37 +0100
commit8352715ae8ae26d77be42f10f4988821ce833f20 (patch)
tree243ab5df8844e201915af814d6b838b443a4f343 /index.pl
parent9bc85128d7e02c6cb73ec08eff490200af63b730 (diff)
implement toplist
Diffstat (limited to 'index.pl')
-rw-r--r--index.pl21
1 files changed, 10 insertions, 11 deletions
diff --git a/index.pl b/index.pl
index b12a274..2782520 100644
--- a/index.pl
+++ b/index.pl
@@ -439,7 +439,7 @@ get '/bar' => sub {
return;
};
-get '/top10' => sub {
+get '/top' => sub {
my $self = shift;
my $where_clause = '1=1';
@@ -462,19 +462,18 @@ get '/top10' => sub {
(scheduled_time, train_id) where $where_clause
};
$rates[$msgnum] = $self->app->dbh->selectall_arrayref($query)->[0][0];
-
- say "$msgnum: " . $rates[$msgnum] / $total;
}
my @argsort = reverse sort { $rates[$a] <=> $rates[$b] } ( 1 .. 99 );
-
- for my $i (@argsort[0 .. 10]) {
- printf("%s: %.2f%%\n", $translation{$i}, $rates[$i] * 100 / $total);
- }
-
- say join(' ', @argsort[0 .. 10]);
-
- $self->render( 'intro', );
+ my @toplist = map {
+ [
+ $translation{$_} // $_,
+ sprintf( '%.2f%%', $rates[$_] * 100 / $total ),
+ $rates[$_]
+ ]
+ } @argsort;
+
+ $self->render( 'toplist', toplist => \@toplist );
return;
};