X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FForm.pm;h=d1dbfb631a2cabbf973293d1f409f8b001d37cf4;hb=6a751412f2815f29cc8c7a1143197beb0f7c8dc3;hp=d43e51fb1e28f5ac92b177e7b48d078c0b1af8bd;hpb=17b40b38feb0c7028d8340b6c20936f5bcc72bea;p=kivitendo-erp.git diff --git a/SL/Form.pm b/SL/Form.pm index d43e51fb1..d1dbfb631 100644 --- a/SL/Form.pm +++ b/SL/Form.pm @@ -181,7 +181,7 @@ sub new { $self->{action} = lc $self->{action}; $self->{action} =~ s/( |-|,|\#)/_/g; - $self->{version} = "2.4.2"; + $self->{version} = "2.4.3"; $main::lxdebug->leave_sub(); @@ -690,7 +690,9 @@ sub redirect { if ($self->{callback}) { - ($script, $argv) = split(/\?/, $self->{callback}); + ($script, $argv) = split(/\?/, $self->{callback}, 2); + $script =~ s|.*/||; + $script =~ s|[^a-zA-Z_\.]||g; exec("perl", "$script", $argv); } else { @@ -980,8 +982,10 @@ Content-Length: $numbytes $main::lxdebug->leave_sub(); } -sub generate_attachment_filename { - my ($self) = @_; +sub get_formname_translation { + my ($self, $formname) = @_; + + $formname ||= $self->{formname}; my %formname_translations = ( bin_list => $main::locale->text('Bin List'), @@ -998,7 +1002,13 @@ sub generate_attachment_filename { storno_packing_list => $main::locale->text('Storno Packing List'), ); - my $attachment_filename = $formname_translations{$self->{"formname"}}; + return $formname_translations{$formname} +} + +sub generate_attachment_filename { + my ($self) = @_; + + my $attachment_filename = $self->get_formname_translation(); my $prefix = (grep { $self->{"type"} eq $_ } qw(invoice credit_note)) ? "inv" : ($self->{"type"} =~ /_quotation$/) ? "quo"