use strict;
use warnings;
use HTML::Template;
my $t = HTML::Template->new(
filehandle => \*DATA,
die_on_bad_params => 0 );
my ( $average, @fullstars, @emptystars );
$average = 3.7; # hard-coded for testing
for ( 1 .. 5 ) {
if ( $_ <= $average ) {
push( @fullstars, 1 );
}
else { push( @emptystars, 1 ) }
}
if ( int($average) != $average ) {
$t->param( halfstar => 1 );
shift(@emptystars);
}
$t->param(
fullstars => \@fullstars,
emptystars => \@emptystars
);
print $t->output();
__DATA__