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);
}
$output_longdates = 1;
}
+ # Store the output number format so that the template modules know
+ # how to parse the amounts back if requested.
+ $myconfig{output_numberformat} = $output_numberformat;
+
($form->{employee}) = split /--/, $form->{employee};
# create the form variables