$self->{data_present} = 0;
+ bless $self, $type;
+
$self->set_options(@_) if (@_);
- return bless $self, $type;
+ return $self;
}
sub set_columns {
my $self = shift;
my $format = shift;
- return grep { my $c = $self->{columns}->{$_}; $c && $c->{visible} && (($c->{visible} == 1) || ($c->{visible} =~ /${format}/i)) } @{ $self->{column_order} };
+ return grep { my $c = $self->{columns}->{$_}; $c && $c->{visible} && (($c->{visible} == 1) || ($c->{visible} =~ /\Q${format}\E/i)) } @{ $self->{column_order} };
}
sub html_format {
}
my ($outer_idx, $inner_idx) = (0, 0);
+ my $next_border_top;
my @rows;
foreach my $row_set (@{ $self->{data} }) {
if ('HASH' eq ref $row_set) {
+ if ($row_set->{type} eq 'separator') {
+ if (! scalar @rows) {
+ $next_border_top = 1;
+ } else {
+ $rows[-1]->{BORDER_BOTTOM} = 1;
+ }
+
+ next;
+ }
+
my $row_data = {
'IS_CONTROL' => 1,
- 'IS_SEPARATOR' => $row_set->{type} eq 'separator',
'IS_COLSPAN_DATA' => $row_set->{type} eq 'colspan_data',
'NUM_COLUMNS' => scalar @visible_columns,
+ 'BORDER_TOP' => $next_border_top,
'data' => $row_set->{data},
};
push @rows, $row_data;
+ $next_border_top = 0;
+
next;
}
'outer_idx' => $outer_idx,
'outer_idx_odd' => $outer_idx % 2,
'inner_idx' => $inner_idx,
+ 'BORDER_TOP' => $next_border_top,
};
push @rows, $row_data;
+
+ $next_border_top = 0;
}
}
my $self = shift;
my $variables = $self->prepare_html_content();
- return $self->{form}->parse_html_template2('report_generator/html_report', $variables);
+ return $self->{form}->parse_html_template('report_generator/html_report', $variables);
}
sub verify_paper_size {