Revision 55d5b334
Von Tamino Steinert vor etwa 1 Jahr hinzugefügt
SL/AP.pm | ||
---|---|---|
44 | 44 |
use SL::DB::Draft; |
45 | 45 |
use SL::DB::Order; |
46 | 46 |
use SL::DB::PurchaseInvoice; |
47 |
use SL::DB::EmailJournal; |
|
47 | 48 |
use SL::DB::ValidityToken; |
48 | 49 |
use SL::Util qw(trim); |
49 | 50 |
use SL::DB; |
... | ... | |
1098 | 1099 |
|
1099 | 1100 |
map { IO->set_datepaid(table => 'ap', id => $_, dbh => $dbh) } ($id, $new_id); |
1100 | 1101 |
|
1102 |
if ($form->{workflow_email_journal_id}) { |
|
1103 |
my $ap_transaction_storno = SL::DB::PurchaseInvoice->new(id => $new_id)->load; |
|
1104 |
my $email_journal = SL::DB::EmailJournal->new( |
|
1105 |
id => delete $form->{workflow_email_journal_id} |
|
1106 |
)->load; |
|
1107 |
$email_journal->link_to_record_with_attachment( |
|
1108 |
$ap_transaction_storno, |
|
1109 |
delete $::form->{email_attachment_id} |
|
1110 |
); |
|
1111 |
} |
|
1112 |
|
|
1101 | 1113 |
return 1; |
1102 | 1114 |
} |
1103 | 1115 |
|
bin/mozilla/ap.pl | ||
---|---|---|
53 | 53 |
use SL::DB::PurchaseInvoice; |
54 | 54 |
use SL::DB::RecordTemplate; |
55 | 55 |
use SL::DB::Tax; |
56 |
use SL::DB::EmailJournal; |
|
56 | 57 |
use SL::DB::ValidityToken; |
57 | 58 |
use SL::Presenter::ItemsList; |
58 | 59 |
use SL::Webdav; |
... | ... | |
257 | 258 |
|
258 | 259 |
AP->get_transdate(\%myconfig, $form); |
259 | 260 |
$form->{initial_transdate} = $form->{transdate}; |
261 |
$form->{initial_vendor_id} = $form->{vendor_id}; |
|
260 | 262 |
create_links(dont_save => 1); |
261 | 263 |
$form->{transdate} = $form->{initial_transdate}; |
264 |
$form->{vendor_id} = $form->{initial_vendor_id} if $form->{initial_vendor_id}; |
|
262 | 265 |
|
263 | 266 |
if ($form->{vendor_id}) { |
264 | 267 |
my $vendor = SL::DB::Vendor->load_cached($form->{vendor_id}); |
... | ... | |
961 | 964 |
} |
962 | 965 |
} |
963 | 966 |
|
967 |
if ($form->{email_journal_id}) { |
|
968 |
my $ap_transaction = SL::DB::PurchaseInvoice->new(id => $form->{id})->load; |
|
969 |
my $email_journal = SL::DB::EmailJournal->new( |
|
970 |
id => delete $form->{email_journal_id} |
|
971 |
)->load; |
|
972 |
$email_journal->link_to_record_with_attachment($ap_transaction, delete $::form->{email_attachment_id}); |
|
973 |
} |
|
974 |
|
|
964 | 975 |
if (!$inline) { |
965 | 976 |
my $msg = $locale->text("AP transaction '#1' posted (ID: #2)", $form->{invnumber}, $form->{id}); |
966 | 977 |
if ($form->{callback} =~ /BankTransaction/) { |
... | ... | |
1008 | 1019 |
|
1009 | 1020 |
$main::auth->assert('ap_transactions'); |
1010 | 1021 |
|
1022 |
$form->{email_journal_id} = delete $form->{workflow_email_journal_id}; |
|
1023 |
$form->{email_attachment_id} = delete $form->{workflow_email_attachment_id}; |
|
1024 |
|
|
1011 | 1025 |
map { delete $form->{$_} } qw(printed emailed queued invnumber deliverydate id datepaid_1 gldate_1 acc_trans_id_1 source_1 memo_1 paid_1 exchangerate_1 AP_paid_1 storno convert_from_oe_id); |
1012 | 1026 |
$form->{paidaccounts} = 1; |
1013 | 1027 |
$form->{rowcount}--; |
... | ... | |
1396 | 1410 |
); |
1397 | 1411 |
} |
1398 | 1412 |
|
1413 |
sub add_from_email_journal { |
|
1414 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
1415 |
&add; |
|
1416 |
} |
|
1417 |
|
|
1418 |
sub edit_with_email_journal_workflow { |
|
1419 |
my ($self) = @_; |
|
1420 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
1421 |
$::form->{workflow_email_journal_id} = delete $::form->{email_journal_id}; |
|
1422 |
$::form->{workflow_email_attachment_id} = delete $::form->{email_attachment_id}; |
|
1423 |
|
|
1424 |
&edit; |
|
1425 |
} |
|
1426 |
|
|
1399 | 1427 |
sub setup_ap_search_action_bar { |
1400 | 1428 |
my %params = @_; |
1401 | 1429 |
|
templates/design40_webpages/ap/form_header.html | ||
---|---|---|
4 | 4 |
[% USE T8 %] |
5 | 5 |
[% USE LxERP %] |
6 | 6 |
|
7 |
<h1>[% title | html %]</h1> |
|
7 |
<h1> |
|
8 |
[% IF workflow_email_journal_id; LxERP.t8("Email Journal Workflow") _ " - "; END; %] |
|
9 |
[% title %] |
|
10 |
</h1> |
|
8 | 11 |
|
9 | 12 |
[% INCLUDE 'common/flash.html' %] |
10 | 13 |
|
... | ... | |
39 | 42 |
[% IF !id %] |
40 | 43 |
[% L.hidden_tag('form_validity_token', form_validity_token) %] |
41 | 44 |
[% END %] |
45 |
[% L.hidden_tag('email_journal_id', email_journal_id) %] |
|
46 |
[% L.hidden_tag('email_attachment_id', email_attachment_id) %] |
|
47 |
[% L.hidden_tag('workflow_email_journal_id', workflow_email_journal_id) %] |
|
48 |
[% L.hidden_tag('workflow_email_attachment_id', workflow_email_attachment_id) %] |
|
42 | 49 |
|
43 | 50 |
[% FOREACH i IN [1..paidaccounts] %] |
44 | 51 |
[% temp = "acc_trans_id_"_ i %] |
... | ... | |
56 | 63 |
|
57 | 64 |
<ul> |
58 | 65 |
<li><a href="#ui-tabs-basic-data">[% 'Basic Data' | $T8 %]</a></li> |
66 |
[% IF email_attachment_id || workflow_email_attachment_id %] |
|
67 |
<li><a href="controller.pl?action=EmailJournal/attachment_preview&attachment_id=[% HTML.url(email_attachment_id || workflow_email_attachment_id) %]">[% 'Email Attachment Preview' | $T8 %]</a></li> |
|
68 |
[% END %] |
|
59 | 69 |
[% IF INSTANCE_CONF.get_webdav %] |
60 | 70 |
<li><a href="#ui-tabs-webdav">[% 'WebDAV' | $T8 %]</a></li> |
61 | 71 |
[% END %] |
... | ... | |
77 | 87 |
|
78 | 88 |
<div id="ui-tabs-basic-data"> |
79 | 89 |
|
90 |
[% IF email_attachment_id || workflow_email_attachment_id%] |
|
91 |
<div class="wrapper" id="email_attachment_wrapper"> |
|
92 |
[% |
|
93 |
BLOCK panel_1; |
|
94 |
P.email_journal.attachment_preview( |
|
95 |
email_attachment_id || workflow_email_attachment_id, |
|
96 |
style="height:600px" |
|
97 |
); |
|
98 |
END; |
|
99 |
INCLUDE 'common/toggle_panel.html' |
|
100 |
block_name='panel_1' |
|
101 |
button_closed = LxERP.t8('Show Attachment') |
|
102 |
button_open = LxERP.t8('Hide Attachment') |
|
103 |
; |
|
104 |
%] |
|
105 |
</div> |
|
106 |
[% END %] |
|
107 |
|
|
80 | 108 |
<div class="wrapper"> |
81 | 109 |
|
82 | 110 |
<table class="tbl-horizontal"> |
templates/webpages/ap/form_header.html | ||
---|---|---|
4 | 4 |
[%- USE T8 %] |
5 | 5 |
[%- USE LxERP %][%- USE P -%] |
6 | 6 |
|
7 |
<h1>[% title | html %]</h1> |
|
7 |
<h1> |
|
8 |
[% IF workflow_email_journal_id; LxERP.t8("Email Journal Workflow") _ " - "; END; %] |
|
9 |
[% title %] |
|
10 |
</h1> |
|
8 | 11 |
|
9 | 12 |
[%- INCLUDE 'common/flash.html' %] |
10 | 13 |
|
... | ... | |
48 | 51 |
[% IF !id %] |
49 | 52 |
[% L.hidden_tag('form_validity_token', form_validity_token) %] |
50 | 53 |
[% END %] |
54 |
[% L.hidden_tag('email_journal_id', email_journal_id) %] |
|
55 |
[% L.hidden_tag('email_attachment_id', email_attachment_id) %] |
|
56 |
[% L.hidden_tag('workflow_email_journal_id', workflow_email_journal_id) %] |
|
57 |
[% L.hidden_tag('workflow_email_attachment_id', workflow_email_attachment_id) %] |
|
51 | 58 |
|
52 | 59 |
[% FOREACH i IN [1..paidaccounts] %] |
53 | 60 |
[% temp = "acc_trans_id_"_ i %] |
... | ... | |
64 | 71 |
<div id="ap_tabs" class="tabwidget"> |
65 | 72 |
<ul> |
66 | 73 |
<li><a href="#ui-tabs-basic-data">[% 'Basic Data' | $T8 %]</a></li> |
74 |
[% IF email_attachment_id || workflow_email_attachment_id %] |
|
75 |
<li><a href="controller.pl?action=EmailJournal/attachment_preview&attachment_id=[% HTML.url(email_attachment_id || workflow_email_attachment_id) %]">[% 'Email Attachment Preview' | $T8 %]</a></li> |
|
76 |
[% END %] |
|
67 | 77 |
[%- IF INSTANCE_CONF.get_webdav %] |
68 | 78 |
<li><a href="#ui-tabs-webdav">[% 'WebDAV' | $T8 %]</a></li> |
69 | 79 |
[%- END %] |
Auch abrufbar als: Unified diff
Workflow: E-Mail → Kreditorenbuchung hinzugefügt