chiark / gitweb /
Midnight has some Lime dye; Cobalt has some Navy dye
[ypp-sc-tools.db-live.git] / yarrg / web / check_lossperleague
index 5994f6fdd8373831c1402499a5de0f7ddbc02fa7..a37382e3a48aec5f61ae86eb2562d7c7647f50e4 100644 (file)
  sponsored by Three Rings.
 
 
- This Mason component simply defines how to interpret capacities.
+ This Mason component simply defines how to interpret losses per league.
 
 </%doc>
-
-<%attr>
-</%attr>
-
-<%method preparse>
+<%method execute>
 <%args>
-$h
+$string
+$dbh
+$debugf
 </%args>
 <%perl>
 
-$_= ${ $h->{String} };
+$_= $string;
 s/^\s+//; s/\s+$//;
 
-my $res= sub {
-       my ($pct,$str) = @_;
-       push @{ $h->{Results} }, [ $pct ];
-       ${ $h->{Canon} }= "$str per league";
-};
+my ($pct,$str);
 
 if (!m/\S/) {
+       $str= '';
 } elsif (m/^(\d{1,2}(?:\.\d{0,5})?)\%$/) {
-       $res->( $1 * 1.0, sprintf("%g%%", $1) );
+       $pct= $1 * 1.0;
+       $str= sprintf("%g%%", $1);
 } elsif (m/^1\s*\/\s*([1-9]\d{0,4})/) {
-       $res->( 100.0/$1, sprintf("1/%d", $1) );
+       $pct= 100.0/$1;
+       $str= sprintf("1/%d", $1);
 } else {
-       ${ $h->{Emsg} }= "Cannot understand loss per league \`$_'.";
-       return;
+       expected_error("Cannot understand loss per league ".escerrq($_).".");
 }
 
+return ("$str per league", $pct);
+
 </%perl>
 </%method>