X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FLetter.pm;h=9efca360c4a5ff52647c4393a0b77ceff69cc368;hb=78078fbf7a94e349032c83ae324c87c94487e11a;hp=69e2bdf43b1c89ab0b52715a7d9a59e5c9011e6e;hpb=6d9d1fbf6d9478ab95144ce5d95300bd2ae46be8;p=kivitendo-erp.git diff --git a/SL/Controller/Letter.pm b/SL/Controller/Letter.pm index 69e2bdf43..9efca360c 100644 --- a/SL/Controller/Letter.pm +++ b/SL/Controller/Letter.pm @@ -176,7 +176,7 @@ sub action_list { $self->prepare_report; my $letters = $self->models->get; - $self->report_generator_list_objects(report => $self->{report}, objects => $letters, action_bar => 1); + $self->report_generator_list_objects(report => $self->{report}, objects => $letters); } @@ -301,48 +301,11 @@ sub action_delete_drafts { $self->action_add(skip_drafts => 1); } -sub action_edit_email { - my ($self) = @_; - - my $letter = $self->_update; - $self->export_letter_to_form($letter); - - $::form->{formname} = "letter"; - $::form->{type} = "letter"; - $::form->{letternumber} = $self->letter->letternumber; - - my @hiddens = map { - my $value = $letter->$_; - $value = $value->to_kivitendo if ref($_) =~ m{Date}; - - { name => "letter.$_", value => $value } - } ($letter->meta->columns); - - my %vars = ( - script => 'controller.pl', - title => t8('Send letter via e-mail'), - email => $letter->contact ? $letter->contact->cp_email : '', - subject => $::form->generate_email_subject, - a_filename => $::form->generate_attachment_filename, - HIDDEN => \@hiddens, - SHOW_BCC => $::auth->assert('email_bcc', 'may fail'), - ); - - $::request->layout->use_javascript("kivi.SalesPurchase.js"); - $self->setup_edit_email_action_bar; - $self->render('letter/edit_email', %vars); -} - sub action_send_email { my ($self) = @_; $::form->{media} = 'email'; - $self->action_print_letter( - email => { - to => $::form->{email}, - map { ($_ => $::form->{$_}) } qw(cc bcc subject attachment_filename message) - } - ); + $self->action_print_letter(email => $::form->{email_form}); } ### internal methods @@ -377,7 +340,9 @@ sub _display { options => { no_postscript => 1, no_opendocument => 1, no_html => 1, - no_queue => 1 }), + no_queue => 1, + show_headers => 1, + }), ); } @@ -613,7 +578,6 @@ sub init_webdav_objects { number => $self->letter->letternumber, ); - my $webdav_path = $webdav->webdav_path; my @all_objects = $webdav->get_all_objects; return [ map { @@ -690,12 +654,12 @@ sub setup_display_action_bar { action => [ t8('Export') ], action => [ t8('Print'), - submit => [ '#form', { action => 'Letter/print_letter' } ], + call => [ 'kivi.SalesPurchase.show_print_dialog', 'Letter/print_letter' ], disabled => !$self->letter->id ? t8('The object has not been saved yet.') : undef, ], action => [ t8('E-mail'), - submit => [ '#form', { action => 'Letter/edit_email' } ], + call => [ 'kivi.SalesPurchase.show_email_dialog', 'Letter/send_email' ], disabled => !$self->letter->id ? t8('The object has not been saved yet.') : undef, ], ], @@ -703,36 +667,16 @@ sub setup_display_action_bar { } } -sub setup_edit_email_action_bar { - my ($self, %params) = @_; - - for my $bar ($::request->layout->get('actionbar')) { - $bar->add( - action => [ - t8('Continue'), - submit => [ '#form', { action => 'Letter/send_email' } ], - checks => [ 'kivi.SalesPurchase.check_required_email_fields' ], - accesskey => 'enter', - ], - ); - } -} - sub setup_list_action_bar { my ($self, %params) = @_; for my $bar ($::request->layout->get('actionbar')) { $bar->add( action => [ - t8('Search'), - submit => [ '#form', { action => 'Letter/list' } ], - checks => [ 'kivi.SalesPurchase.check_required_email_fields' ], + t8('Update'), + submit => [ '#search_form', { action => 'Letter/list' } ], accesskey => 'enter', ], - action => [ - t8('Reset'), - call => [ 'kivi.call_jquery', '#form', 'resetForm' ], - ], ); } }