]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/ReportGenerator.pm
Die Funktion Form::parse_html_template2() in Form::parse_html_template() umbenannt...
[kivitendo-erp.git] / SL / ReportGenerator.pm
index 2810006027a0f10c848e4abc2b28640909828cc7..732016b942ae6474ee8abf86eee9eba63efcfa65 100644 (file)
@@ -48,9 +48,11 @@ sub new {
 
   $self->{data_present} = 0;
 
+  bless $self, $type;
+
   $self->set_options(@_) if (@_);
 
-  return bless $self, $type;
+  return $self;
 }
 
 sub set_columns {
@@ -107,7 +109,14 @@ sub add_data {
       $self->{form}->error('Incorrect usage -- expecting hash or array ref');
     }
 
+    my @columns_with_default_alignment = grep { defined $self->{columns}->{$_}->{align} } keys %{ $self->{columns} };
+
     foreach my $row (@{ $row_set }) {
+      foreach my $column (@columns_with_default_alignment) {
+        $row->{$column}          ||= { };
+        $row->{$column}->{align}   = $self->{columns}->{$column}->{align} unless (defined $row->{$column}->{align});
+      }
+
       foreach my $field (qw(data link)) {
         map { $row->{$_}->{$field} = [ $row->{$_}->{$field} ] if (ref $row->{$_}->{$field} ne 'ARRAY') } keys %{ $row };
       }
@@ -222,7 +231,7 @@ sub get_visible_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 {
@@ -335,7 +344,7 @@ sub generate_html_content {
   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 {