X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FHelper%2FMassPrintCreatePDF.pm;h=be80a69d4d62cc23ed71c1938ebd74372ce9aac2;hb=293607842ff6fe3f2bed0cf1c316f80f53a14107;hp=66fbaf2b90a8065fa327d0f4e1eba296c3fc1ada;hpb=075f64d61e999506517a304022525d83c29e6e3e;p=kivitendo-erp.git diff --git a/SL/Helper/MassPrintCreatePDF.pm b/SL/Helper/MassPrintCreatePDF.pm index 66fbaf2b9..be80a69d4 100644 --- a/SL/Helper/MassPrintCreatePDF.pm +++ b/SL/Helper/MassPrintCreatePDF.pm @@ -2,6 +2,8 @@ package SL::Helper::MassPrintCreatePDF; use strict; +use SL::Webdav; + use Exporter 'import'; our @EXPORT_OK = qw(create_massprint_pdf merge_massprint_pdf create_pdfs print_pdfs); our %EXPORT_TAGS = ( @@ -23,8 +25,9 @@ sub create_massprint_pdf { my ($self, %params) = @_; my $form = Form->new(''); my %create_params = ( - variables => $form, - return => 'file_name', + variables => $form, + record => $params{document}, + return => 'file_name', ); ## find_template may return a list ! $create_params{template} = $self->find_template(name => $params{variables}->{formname}, printer_id => $params{printer_id}); @@ -42,10 +45,29 @@ sub create_massprint_pdf { } $form->prepare_for_printing; + + $form->{language} = '_' . $form->{language}; $form->{attachment_filename} = $form->generate_attachment_filename; my $pdf_filename = $self->create_pdf(%create_params); + if ($::instance_conf->get_webdav_documents && !$form->{preview}) { + my $webdav = SL::Webdav->new( + type => $params{document}->type, + number => $params{document}->record_number, + ); + my $webdav_file = SL::Webdav::File->new( + webdav => $webdav, + filename => $form->{attachment_filename}, + ); + eval { + $webdav_file->store(file => $pdf_filename); + 1; + } or do { + push @{ $params{errors} }, $@ if exists $params{errors}; + } + } + if ( $::instance_conf->get_doc_storage && ! $form->{preview}) { $self->append_general_pdf_attachments(filepath => $pdf_filename, type => $form->{type} ); $form->{tmpfile} = $pdf_filename; @@ -160,6 +182,15 @@ a tempory $form is used to set before printing is done +Recognized parameters are (not a complete list): + +=over 2 + +=item * C – optional. If given, it must be an array ref. This will be +filled with potential errors. + +=back + =head1 AUTHOR