#these run parallel to items, and can be given as hashes
'row_labels' => \@row_labels, #required
'colors' => \@colors, #required
+ 'bgcolors' => \@bgcolors, #optional
'graph_labels' => \@graph_labels, #defaults to row_labels
'links' => \@links, #optional
#optional
'nototal' => 1,
- 'graph_type' => 'LinesPoints',
+ 'graph_type' => 'LinesPoints', #can be 'none' for no graph
'bottom_total' => 1,
'sprintf' => '%u', #sprintf format, overrides default %.2f
'disable_money' => 1,
% foreach my $row ( @items ) {
% #make a style
% my $color = shift @{ $opt{'colors'} };
-% push @styles, ".i$i { text-align: right; color: #$color; }";
+% my $bgcolor = $opt{'bgcolors'} ? (shift @{ $opt{'bgcolors'} }) : 'ffffff';
+% push @styles, ".i$i { text-align: right; color: #$color; background: #$bgcolor; }";
% #create the data row
% my $links = shift @{$opt{'links'}} || [''];
% my $link_prefix = shift @$links;
% my $e = 0;
% foreach ( @$data_row ) {
% my $entry = $_;
-% $entry = $money_char . sprintf($sprintf, $entry);
+% $entry = $money_char . sprintf($sprintf_fields->{$row} ? $sprintf_fields->{$row} : $sprintf, $entry);
% $entry = $link_prefix . shift(@$links) . "\">$entry</A>" if $link_prefix;
% push @{$cell[$i]}, $entry;
% $bottom_total[$e++] += $_ unless $opt{no_graph}[$i-1];
%opt = %{ $m->cache->get($session) };
}
else {
- $session = sprintf("%010d%06d", time, int(rand(1000000)));
+ $session = sprintf("%010d", random_id(10));
$m->cache->set($session, \%opt, '1h');
}
my $money_char = $opt{'disable_money'} ? '' : $conf->config('money_char');
my @items = @{ $opt{'items'} };
+my $sprintf_fields = $opt{'sprintf_fields'};
foreach my $other (qw( col_labels row_labels graph_labels axis_labels colors links )) {
if ( ref($opt{$other}) eq 'HASH' ) {