Revision 63c87487
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; |
... | ... | |
357 | 358 |
|
358 | 359 |
AP->get_transdate(\%myconfig, $form); |
359 | 360 |
$form->{initial_transdate} = $form->{transdate}; |
361 |
$form->{initial_vendor_id} = $form->{vendor_id}; |
|
360 | 362 |
create_links(dont_save => 1); |
361 | 363 |
$form->{transdate} = $form->{initial_transdate}; |
364 |
$form->{vendor_id} = $form->{initial_vendor_id} if $form->{initial_vendor_id}; |
|
362 | 365 |
|
363 | 366 |
if ($form->{vendor_id}) { |
364 | 367 |
my $vendor = SL::DB::Vendor->load_cached($form->{vendor_id}); |
... | ... | |
1061 | 1064 |
} |
1062 | 1065 |
} |
1063 | 1066 |
|
1067 |
if ($form->{email_journal_id}) { |
|
1068 |
my $ap_transaction = SL::DB::PurchaseInvoice->new(id => $form->{id})->load; |
|
1069 |
my $email_journal = SL::DB::EmailJournal->new( |
|
1070 |
id => delete $form->{email_journal_id} |
|
1071 |
)->load; |
|
1072 |
$email_journal->link_to_record_with_attachment($ap_transaction, delete $::form->{email_attachment_id}); |
|
1073 |
} |
|
1074 |
|
|
1064 | 1075 |
if (!$inline) { |
1065 | 1076 |
my $msg = $locale->text("AP transaction '#1' posted (ID: #2)", $form->{invnumber}, $form->{id}); |
1066 | 1077 |
if ($form->{callback} =~ /BankTransaction/) { |
... | ... | |
1108 | 1119 |
|
1109 | 1120 |
$main::auth->assert('ap_transactions'); |
1110 | 1121 |
|
1122 |
$form->{email_journal_id} = delete $form->{workflow_email_journal_id}; |
|
1123 |
$form->{email_attachment_id} = delete $form->{workflow_email_attachment_id}; |
|
1124 |
|
|
1111 | 1125 |
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); |
1112 | 1126 |
$form->{paidaccounts} = 1; |
1113 | 1127 |
$form->{rowcount}--; |
... | ... | |
1496 | 1510 |
); |
1497 | 1511 |
} |
1498 | 1512 |
|
1513 |
sub add_from_email_journal { |
|
1514 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
1515 |
&add; |
|
1516 |
} |
|
1517 |
|
|
1518 |
sub edit_with_email_journal_workflow { |
|
1519 |
my ($self) = @_; |
|
1520 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
1521 |
$::form->{workflow_email_journal_id} = delete $::form->{email_journal_id}; |
|
1522 |
$::form->{workflow_email_attachment_id} = delete $::form->{email_attachment_id}; |
|
1523 |
|
|
1524 |
&edit; |
|
1525 |
} |
|
1526 |
|
|
1499 | 1527 |
sub setup_ap_search_action_bar { |
1500 | 1528 |
my %params = @_; |
1501 | 1529 |
|
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