]> git.sesse.net Git - foosball/blobdiff - www/index.pl
Centralize rounding decisions, so we round symmetrically.
[foosball] / www / index.pl
index a9f2d43b7d022a7dd133f424b004dc3436afba1d..c1ab7d17a2993e2dab12c7a66cfcb31556c88645 100755 (executable)
@@ -21,14 +21,14 @@ while (my $ref = $q->fetchrow_hashref) {
 
        my $trend = "";
        if (defined($oldrating)) {
-               $trend = (sprintf "%+d", int($rating-$oldrating+0.5));
+               $trend = (sprintf "%+d", foosball::round($rating-$oldrating));
        }
 
        push @single_top, {
                'username' => $username,
-               'rating' => int($rating+0.5),
-               'rd' => int($rd+0.5),
-               'lowerbound' => int($rating - 3.0*$rd + 0.5),
+               'rating' => foosball::round($rating),
+               'rd' => foosball::round($rd),
+               'lowerbound' => foosball::round($rating - 3.0*$rd),
                'trend' => $trend,
        };
 }
@@ -47,14 +47,14 @@ while (my $ref = $q->fetchrow_hashref) {
 
        my $trend = "";
        if (defined($oldrating)) {
-               $trend = (sprintf "%+d", int($rating-$oldrating+0.5));
+               $trend = (sprintf "%+d", foosball::round($rating-$oldrating));
        }
 
        push @double_top, {
                'username' => $username,
-               'rating' => int($rating+0.5),
-               'rd' => int($rd+0.5),
-               'lowerbound' => int($rating - 3.0*$rd + 0.5),
+               'rating' => foosball::round($rating),
+               'rd' => foosball::round($rd),
+               'lowerbound' => foosball::round($rating - 3.0*$rd),
                'trend' => $trend,
        };
 }
@@ -117,14 +117,14 @@ $q->execute();
 while (my $ref = $q->fetchrow_hashref) {
        if (defined($ref->{'diff2'})) {
                $ref->{'diff1'} = sprintf "%+d / %+d",
-                       int($ref->{'diff1'} + 0.5),
-                       int($ref->{'diff2'} + 0.5);
+                       foosball::round($ref->{'diff1'}),
+                       foosball::round($ref->{'diff2'});
                $ref->{'diff2'} = sprintf "%+d / %+d",
-                       int($ref->{'diff3'} + 0.5),
-                       int($ref->{'diff4'} + 0.5);
+                       foosball::round($ref->{'diff3'}),
+                       foosball::round($ref->{'diff4'});
        } else {
-               $ref->{'diff1'} = sprintf "%+d", int($ref->{'diff1'} + 0.5);
-               $ref->{'diff2'} = sprintf "%+d", int($ref->{'diff3'} + 0.5);
+               $ref->{'diff1'} = sprintf "%+d", foosball::round($ref->{'diff1'});
+               $ref->{'diff2'} = sprintf "%+d", foosball::round($ref->{'diff3'});
        }
        push @last_games, $ref;
 }