X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FTemplate%2FSimple.pm;h=926ef1f7f95347abaef79354467d3fe6601541fa;hb=55af6244bd721f294ff5eee7e9357a3217318e5e;hp=9960908da51e2eb0f413eec75b44f515e85d3676;hpb=1a106c11e3f0e22b84e92d6f52c232b5b47d3d99;p=kivitendo-erp.git diff --git a/SL/Template/Simple.pm b/SL/Template/Simple.pm index 9960908da..926ef1f7f 100644 --- a/SL/Template/Simple.pm +++ b/SL/Template/Simple.pm @@ -125,10 +125,12 @@ sub substitute_vars { while ($text =~ /$self->{substitute_vars_re}/) { my ($tag_pos, $tag_len) = ($-[0], $+[0] - $-[0]); - my ($var, @options) = split(/\s+/, $1); + my ($var, @option_list) = split(/\s+/, $1); + my %options = map { ($_ => 1) } @option_list; my $value = $self->_get_loop_variable($var, 0, @indices); - $value = $self->format_string($value) unless (grep(/^NOESCAPE$/, @options)); + $value = $form->parse_amount({ numberformat => $::myconfig{output_numberformat} || $::myconfig{numberformat} }, $value) if $options{NOFORMAT}; + $value = $self->format_string($value) unless $options{NOESCAPE}; substr($text, $tag_pos, $tag_len, $value); } @@ -195,6 +197,7 @@ sub _parse_block_if { } my $value = $self->_get_loop_variable($var, 0, @indices); + $value = scalar(@{ $value }) if (ref($value) || '') eq 'ARRAY'; my $hit = 0; if ($operator_type) {