Merge branch 'b-3.6.1' of ../kivitendo-erp_20220811
[kivitendo-erp.git] / templates / webpages / bank_transactions / tabs / all.html
1 [%- USE HTML -%][%- USE LxERP -%][%- USE L -%][%- USE T8 -%][%- USE P -%]
2
3 [% BLOCK proposal_div %]
4         <div data-proposal-id="[% prop.id %]">
5          <a href=# onclick="kivi.BankTransaction.add_invoices('[% bt.id %]', '[% prop.id %]');"
6             title="<table><tr><th></th><th>[% 'Suggested invoice' | $T8 %][% IF !prop.is_sales %] ([% 'AP' | $T8 %])[% END %]</th><th>[% 'Bank transaction' | $T8 %]</th></tr><tr><th>[% 'Amount' | $T8 %]</th><td>[% prop.realamount %] ([% 'open' | $T8 %]: [% LxERP.format_amount(prop.open_amount, 2) %])</td><td>[% LxERP.format_amount(bt.amount, 2) %]</td></tr>[% IF prop.skonto_date %]<tr><th>[% 'Payment terms' | $T8 %]</th><td>[% LxERP.format_amount(prop.amount_less_skonto, 2) %] [% 'until' | $T8 %] [% HTML.escape(prop.skonto_date.to_kivitendo) %] ([% prop.percent_skonto * 100 %] %)</td><td></td></tr>[% END %]<tr><th>[% 'Customer/Vendor' | $T8 %]</th><td>[% HTML.escape(prop.customer.displayable_name) %][% HTML.escape(prop.vendor.displayable_name) %]</td><td>[% HTML.escape(bt.remote_name) %]</td></tr><tr><th>[% 'Invoice Date' | $T8 %]</th><td>[% HTML.escape(prop.transdate_as_date) %]</td><td>[% HTML.escape(bt.transdate_as_date) %] ([% HTML.escape(bt.transdate.utc_rd_days - prop.transdate.utc_rd_days) %])</td></tr><tr><th>[% 'Invoice Number' | $T8 %]</th><td>[% HTML.escape(prop.invnumber) %]</td><td>[% HTML.escape(bt.purpose) %]</td></tr></table>"
7               class="[% IF bt.agreement >= 5 %]green[% ELSIF bt.agreement < 5 and bt.agreement >= 3 %]orange[% ELSE %]red[% END %] tooltipster-html">&larr;[% HTML.escape(prop.invnumber)%]</a>
8         </div>
9 [% END %]
10
11 [% SET debug=1 %]
12 <form method="post" id="list_all_form">
13 [% L.hidden_tag('filter.bank_account', FORM.filter.bank_account) %]
14 [% L.hidden_tag('filter.fromdate', FORM.filter.fromdate) %]
15 [% L.hidden_tag('filter.todate',   FORM.filter.todate) %]
16 [% L.hidden_tag('action', 'BankTransaction/dispatch') %]
17 [% L.hidden_tag('ui_tab', ui_tab) %]
18
19  <table id="bt_list">
20   <thead>
21    <tr class="listheading">
22     <th></th>
23     <th></th>
24     <th>[% LxERP.t8("Assigned invoices with amount") %]</th>
25     <th style="width: 100px">[% LxERP.t8("Source") %]</th>
26     <th style="width: 100px">[% LxERP.t8("Memo") %]</th>
27     [% IF debug %]
28     <th>[% 'Score' | $T8 %]</th>
29     [% END %]
30     <th>[% IF FORM.sort_by == 'proposal'%]
31           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=proposal&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
32             [% 'Proposal' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
33         [% ELSE %]
34           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=proposal&sort_dir=0" class="sort_link">
35             [% 'Proposal' | $T8 %]</a>
36         [% END %]
37     </th>
38     <th>[% IF FORM.sort_by == 'transdate'%]
39           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=transdate&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
40             [% 'Transdate' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
41         [% ELSE %]
42           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=transdate&sort_dir=0" class="sort_link">
43             [% 'Transdate' | $T8 %]</a>
44         [% END %]
45     </th>
46     <th>[% IF FORM.sort_by == 'amount'%]
47           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=amount&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
48             [% 'Amount' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
49         [% ELSE %]
50           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=amount&sort_dir=0" class="sort_link">
51             [% 'Amount' | $T8 %]</a>
52         [% END %]
53     </th>
54     <th>[% 'Assigned' | $T8 %]</th>
55     <th>[% IF FORM.sort_by == 'remote_name'%]
56           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_name&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
57             [% 'Remote name' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
58         [% ELSE %]
59           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_name&sort_dir=0" class="sort_link">
60             [% 'Remote name' | $T8 %]</a>
61         [% END %]
62     </th>
63     <th>[% 'Purpose' | $T8 %]</th>
64     <th>[% 'Type' | $T8 %]</th>
65     <th>[% IF FORM.sort_by == 'remote_account_number'%]
66           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_account_number&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
67             [% 'Remote account number' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
68         [% ELSE %]
69           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_account_number&sort_dir=0" class="sort_link">
70             [% 'Remote account number' | $T8 %]</a>
71         [% END %]
72     </th>
73     <th>[% IF FORM.sort_by == 'remote_bank_code'%]
74           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_bank_code&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
75             [% 'Remote bank code' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
76         [% ELSE %]
77           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=remote_bank_code&sort_dir=0" class="sort_link">
78             [% 'Remote bank code' | $T8 %]</a>
79         [% END %]
80     </th>
81     <th>[% IF FORM.sort_by == 'valutadate'%]
82           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=valutadate&sort_dir=[% 1 - FORM.sort_dir %]" class="sort_link">
83             [% 'Valutadate' | $T8 %][% IF FORM.sort_dir == 0 %]<img border="0" src="image/down.png">[% ELSE %]<img border="0" src="image/up.png">[% END %]</a>
84         [% ELSE %]
85           <a href="controller.pl?action=BankTransaction/list&filter.bank_account=[% bank_account.id %]&sort_by=valutadate&sort_dir=0" class="sort_link">
86             [% 'Valutadate' | $T8 %]</a>
87         [% END %]
88     </th>
89     <th>[% 'Currency' | $T8 %]</th>
90    </tr>
91   </thead>
92
93   [%- FOREACH bt = BANK_TRANSACTIONS %]
94    <tbody class="listrow" id="bt_rows_[% HTML.escape(bt.id) %]">
95     [% SET proposals = bt.proposals.as_list.size > 0 ? bt.proposals.as_list : [{}] ;
96        FOREACH prop = proposals %]
97      [% IF loop.first %]
98       <tr id="bt_id_[% bt.id %]">
99        <td><a href=# onclick="kivi.BankTransaction.assign_invoice('[% bt.id %]'); return false;">[% 'Assign invoice' | $T8 %]</a></td>
100        <td><a href=# onclick="kivi.BankTransaction.create_invoice('[% bt.id %]'); return false;">[% 'Create invoice' | $T8 %]</a></td>
101        <td id="assigned_invoices_[% bt.id %]_[% prop.id %]"></td>
102        <td>[% P.input_tag("sources_" _ bt.id _ "_" _ prop.id, "", class="hidden") %]</td>
103        <td>[% P.input_tag("memos_" _ bt.id _ "_" _ prop.id, "", class="hidden") %]</td>
104        [% IF debug %]
105        <td class="tooltipster-html" title="[% FOREACH match = bt.rule_matches %] [% match %]<br> [% END %]">[% bt.agreement %]</td>
106        [% END %]
107        <td>
108         [% IF prop.id ;
109              PROCESS proposal_div ;
110            END %]
111        </td>
112        <td align="right">[% bt.transdate_as_date %]</td>
113        <td align="right">[% LxERP.format_amount(bt.amount, 2) %]</td>
114        <td align="right" id="invoice_amount_[% HTML.escape(bt.id) %]" data-invoice-amount="[% HTML.escape(bt.invoice_amount) %]">[% HTML.escape(LxERP.format_amount(bt.invoice_amount, 2)) %]</td>
115        <td>[% HTML.escape(bt.remote_name) %]</td>
116        <td>[% HTML.escape(bt.purpose) %]</td>
117        <td>[% HTML.escape(bt.transaction_text) %]</td>
118        <td>[% HTML.escape(bt.remote_account_number) %]</td>
119        <td>[% HTML.escape(bt.remote_bank_code) %]</td>
120        <td align="right">[% bt.valutadate_as_date %]</td>
121        <td align="center">[% HTML.escape(bt.currency.name) %]</td>
122       </tr>
123      [% ELSE # loop.first %]
124       <tr>
125        <td></td>
126        <td></td>
127        <td id="assigned_invoices_[% bt.id %]_[% prop.id %]"></td>
128        <td>[% P.input_tag("sources_" _ bt.id _ "_" _ prop.id, "", class="hidden") %]</td>
129        <td>[% P.input_tag("memos_" _ bt.id _ "_" _ prop.id, "", class="hidden") %]</td>
130        [% IF debug %]
131        <td></td>
132        [% END %]
133        <td>
134         [% PROCESS proposal_div %]
135        </td>
136        <td></td>
137        <td></td>
138        <td></td>
139        <td></td>
140        <td></td>
141        <td></td>
142        <td></td>
143        <td></td>
144        <td></td>
145        <td></td>
146       </tr>
147      [% END # loop.first %]
148     [% END # FOREACH proposal %]
149    </tbody>
150   [%- END %]
151  </table>
152
153  <p>
154   [% L.submit_tag('action_save_invoices', LxERP.t8('Save invoices')) %]
155   [% L.button_tag('kivi.BankTransaction.show_set_all_sources_memos_dialog("#list_all_form [name^=\\"sources_\\"]:visible", "#list_all_form [name^=\\"memos_\\"]:visible")', LxERP.t8('Set all source and memo fields')) %]
156  </p>
157
158 </form>