Koha/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/invoices.tt
Owen Leonard 1c8c906119
Bug 32746: Standardize structure around action fieldsets in acquisitions
This patch updates acquisitions templates so that fieldsets with the
"action" class are placed outside the form's main fieldset. A couple of
minor changes have been made to related CSS.

To test, apply the patch and rebuild the staff interface CSS. Go to
acquisitions and check the following pages to confirm that changes to
form structure look correct:

- Open the "Late orders" page from the left-hand sidebar menu and check
  the form in the sidebar.
- Open the "Orders search" form in the search header and submit the form
  without specifying any search criteria. This should bring up a blank
  orders search form.
- Open the "Invoices" page from the left-hand sidebar menu. Check the
  form in the sidebar.
  - Perform an invoice search which will return results.
  - View one of the invoices returned by your search.
  - On the invoice detail age, the "Save" button associated with the
    invoice details at the top should look correct.
  - There should be a box below that with the heading "Adjustments" and
    a link to add an adjustment.
  - When you click "Add an adjustment," a form should be displayed with
    the correct controls at the bottom. Clicking "Cancel" should hide
    the form.
  - Click the "Manage invoice files" link, and check the form on that
    page.
- Locate a vendor and view its details.
  - Check the "Uncertain prices" page, linked from the menu in the
    left-hand sidebar.
  - Open the "Baskets" page from the left-hand sidebar. Click the "Add
    to basket" button for one of the existing baskets.
  - Click "From existing orders (copy)". Check that this form looks
    correct.
  - Open the "Basket groups" page from the left-hand sidebar menu.
    - Click "New basket group" and check that form.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-03-10 11:15:24 -03:00

530 lines
35 KiB
Text

[% USE raw %]
[% USE Asset %]
[% USE AuthorisedValues %]
[% USE KohaDates %]
[% USE Branches %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Invoices &rsaquo; Acquisitions &rsaquo; Koha</title>
[% INCLUDE 'doc-head-close.inc' %]
</head>
<body id="acq_invoices" class="acq">
[% WRAPPER 'header.inc' %]
[% INCLUDE 'acquisitions-search.inc' %]
[% END %]
[% WRAPPER 'sub-header.inc' %]
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
<ol>
<li>
<a href="/cgi-bin/koha/mainpage.pl">Home</a>
</li>
<li>
<a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a>
</li>
<li>
<a href="#" aria-current="page">Invoices</a>
</li>
</ol>
</nav>
[% END %]
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
[% INCLUDE 'blocking_errors.inc' %]
<h1>Invoices</h1>
[% IF ( do_search ) %]
[% IF invoices %]
[% BLOCK invoices_table %]
[% IF closed %]
[% SET tab = 'closed' %]
[% ELSE %]
[% SET tab = 'opened' %]
[% END %]
<input type="checkbox" style="vertical-align: middle;" id="show_only_subscription_[% tab | html %]" class="show_only_subscription" data-tableid="[% tab | html %]resultst"/>
<label for="show_only_subscription_[% tab | html %]">
Show only subscriptions
</label>
<p><a id="CheckAll[% tab | html %]table" data-cb="[% tab | html %]" class="checkall" href="#"><i class="fa fa-check"></i> Select all</a> | <a id="UncheckAll[% tab | html %]table" data-cb="[% tab | html %]" class="uncheckall" href="#"><i class="fa fa-remove"></i> Clear all</a></p>
<table id="[% tab | html %]resultst" class="result">
<thead>
<tr>
[% IF CAN_user_acquisition_merge_invoices %]
<th>&nbsp;</th>
[% END %]
<th>&nbsp;</th>
<th>Invoice number</th>
<th>Vendor</th>
<th>Shipment date</th>
<th>Billing date</th>
<th>Received bibliographic records</th>
<th>Received items</th>
<th>Status</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
[% FOREACH invoice IN invoices %]
<tr data-invoiceid="[% invoice.invoiceid | html %]" data-booksellerid="[% invoice.booksellerid | html %]" data-shipmentdate="[% invoice.shipmentdate | $KohaDates %]" data-billingdate="[% invoice.billingdate | $KohaDates %]" data-shipmentcost="[% invoice.shipmentcost | html %]" data-shipment_budgetid="[% invoice.shipmentcost_budgetid | html %]" data-closedate="[% invoice.closedate | $KohaDates %]">
[% IF CAN_user_acquisition_merge_invoices %]
<td>[% invoice.is_linked_to_subscriptions | html %]</td>
[% END %]
<td><input type="checkbox" class="select-invoice" value="[% invoice.invoiceid | html %]" /></td>
<td><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoice.invoiceid | uri %]">[% invoice.invoicenumber | html %]</a></td>
<td><a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% invoice.booksellerid | uri %]">[% invoice.suppliername | html %]</a></td>
<td data-order="[% invoice.shipmentdate | html %]">
[% invoice.shipmentdate | $KohaDates %]
</td>
<td data-order="[% invoice.billingdate | html %]">
[% invoice.billingdate | $KohaDates %]
</td>
<td>[% invoice.receivedbiblios | html %]</td>
<td>[% invoice.receiveditems | html %]</td>
<td>
[% IF invoice.closedate %]
<span>Closed on [% invoice.closedate | $KohaDates %]</span>
[% ELSE %]
<span>Open</span>
[% END %]
</td>
<td>
<div class="btn-group dropup">
<a class="btn btn-default btn-xs dropdown-toggle" id="invoiceactions[% invoice.invoiceid | html %]" role="button" data-toggle="dropdown" href="#">
Actions <b class="caret"></b>
</a>
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="invoiceactions[% invoice.invoiceid | html %]">
<li><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoice.invoiceid | uri %]"><i class="fa fa-search"></i> Details</a></li>
[% IF invoice.closedate %]
[% IF CAN_user_acquisition_reopen_closed_invoices %]
<li><a href="invoice.pl?op=reopen&amp;invoiceid=[% invoice.invoiceid | uri %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber | uri %]%26supplier=[% booksellerid | uri %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn | uri %]%26title=[% title | uri %]%26author=[% author | uri %]%26publisher=[% publisher | uri %]%26publicationyear=[% publicationyear | uri %]%26branch=[% branch | uri %]"><i class="fa fa-refresh"></i> Reopen</a></li>
[% END %]
[% ELSE %]
[% IF CAN_user_acquisition_edit_invoices %]
<li><a href="invoice.pl?op=close&amp;invoiceid=[% invoice.invoiceid | uri %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber | uri %]%26supplier=[% booksellerid | uri %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn | uri %]%26title=[% title | uri %]%26author=[% author | uri %]%26publisher=[% publisher | uri %]%26publicationyear=[% publicationyear | uri %]%26branch=[% branch | uri %]"><i class="fa fa-times-circle"></i> Close</a></li>
[% END %]
[% END # /IF invoice.closedate %]
[% UNLESS invoice.receivedbiblios || invoice.receiveditems %]
[% IF CAN_user_acquisition_delete_invoices %]
<li><a href="invoice.pl?op=delete&amp;invoiceid=[% invoice.invoiceid | uri %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber | uri %]%26supplier=[% booksellerid | uri %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn | uri %]%26title=[% title | uri %]%26author=[% author | uri %]%26publisher=[% publisher | uri %]%26publicationyear=[% publicationyear | uri %]%26branch=[% branch | uri %]" class="delete_invoice"><i class="fa fa-trash"></i> Delete</a></li>
[% END %]
[% END %]
</ul>
</div> <!-- /.btn-group dropup -->
</td>
</tr>
[% END # /FOREACH invoice %]
</tbody>
</table> <!-- /#[% tab | html %]resultst -->
[% IF CAN_user_acquisition_merge_invoices %]
[% IF tab == 'closed' %]
<a class="btn btn-default merge" id="merge_closed" href="#merge_invoices" data-table="closedresultst"><i class="fa fa-compress"></i> Merge selected invoices</a>
<a class="btn btn-default" id="open_sel" href="#reopen_selected" data-table="closedresultst" data-op="reopen" data-referer="referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber | uri %]%26supplier=[% booksellerid | uri %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn | uri %]%26title=[% title | uri %]%26author=[% author | uri %]%26publisher=[% publisher | uri %]%26publicationyear=[% publicationyear | uri %]%26branch=[% branch | uri %]"><i class="fa fa-refresh"></i> Reopen selected invoices</a>
[% ELSE %]
<a class="btn btn-default merge" id="merge_open" href="#merge_invoices" data-table="openedresultst"><i class="fa fa-compress"></i> Merge selected invoices</a>
<a class="btn btn-default" id="close_sel" href="#close_selected" data-table="openedresultst" data-op="close" data-referer="referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber | uri %]%26supplier=[% booksellerid | uri %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn | uri %]%26title=[% title | uri %]%26author=[% author | uri %]%26publisher=[% publisher | uri %]%26publicationyear=[% publicationyear | uri %]%26branch=[% branch | uri %]"><i class="fa fa-times-circle"></i> Close selected invoices</a>
[% END # /IF tab == 'closed' %]
[% END # /IF CAN_user_acquisition_merge_invoices %]
[% END # /BLOCK invoices_table %]
[% WRAPPER tabs id= "invoicestabs" %]
[% WRAPPER tabs_nav %]
[% WRAPPER tab_item tabname= "opened" bt_active= 1 %] Open invoices ([% openedinvoices.size || 0 | html %]) [% END %]
[% WRAPPER tab_item tabname= "closed" %] Closed invoices ([% closedinvoices.size || 0 | html %]) [% END %]
[% END %]
[% WRAPPER tab_panels %]
[% WRAPPER tab_panel tabname="opened" bt_active= 1 %]
[% IF openedinvoices %]
[% INCLUDE invoices_table invoices = openedinvoices %]
[% ELSE %]
<div class="dialog message">
<p>Your search returned no open invoices.</p>
</div>
[% END %]
[% END # /#opened %]
[% WRAPPER tab_panel tabname="closed" %]
[% IF closedinvoices %]
[% INCLUDE invoices_table invoices = closedinvoices closed = 1 %]
[% ELSE %]
<div class="dialog message">
<p>Your search returned no closed invoices.</p>
</div>
[% END %]
[% END # /#closed %]
[% END # /tab_panels %]
[% END # /#invoicestabs %]
<div id="merge_invoices">
<form id="merge_invoice_form" action="/cgi-bin/koha/acqui/invoice.pl" method="post">
<fieldset class="rows">
<ol>
<li><h2>Merge invoices</h2></li>
<li>
<table id="merge_table">
<thead>
<tr>
<th>Invoice number</th>
<th>Shipment date</th>
<th>Billing date</th>
<th>Shipment cost</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</li>
<li>
<label for="merge_invoicenumber" class="required">Invoice number:</label>
<input type="text" size="10" id="merge_invoicenumber" name="invoicenumber" value="" class="required" required="required" />
<span class="required">Required</span>
</li>
<li>
<label for="merge_shipmentdate">Shipment date:</label>
<input type="text" size="10" id="merge_shipmentdate" name="shipmentdate" value="" class="flatpickr" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="merge_billingdate">Billing date:</label>
<input type="text" size="10" id="merge_billingdate" name="billingdate" value="" class="flatpickr" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="merge_shipmentcost">Shipment cost:</label>
<input type="text" size="10" id="merge_shipmentcost" name="shipmentcost" value="" />
</li>
<li>
<label for="merge_shipment_budgetid">Fund:</label>
<select id="merge_shipment_budgetid" name="shipment_budget_id">
<option value="">No fund</option>
[% FOREACH budget IN budgets_loop %]
<option value="[% budget.budget_id | html %]">[% budget.budget_name | html %]</option>
[% END %]
</select>
</li>
<li>
<span class="label">Status:</span> <span id="merge_status"></span>
</li>
<li>
<input type="submit" class="btn btn-primary" value="Merge" />
</li>
</ol>
<input type="hidden" name="op" value="mod" />
<input type="hidden" id="merge_invoiceid" name="invoiceid" value="" />
</fieldset> <!-- /.rows -->
</form> <!-- /#merge_invoice_form -->
</div> <!-- /#merge_invoices -->
[% ELSE # IF invoices %]
<p>Sorry, but there are no results for your search.</p>
<p>Search was:
<ul>
[% IF ( invoicenumber ) %]
<li>Invoice number: [% invoicenumber | html %]</li>
[% END %]
[% IF booksellerid %]
<li>Vendor: [% suppliername | html %]</li>
[% END %]
[% IF shipmentdatefrom %]
<li>
<span>Shipment date:</span>
[% IF shipmentdateto %]
<span>From [% shipmentdatefrom | $KohaDates %]</span>
<span>To [% shipmentdateto | $KohaDates %]</span>
[% ELSE %]
<span>All since [% shipmentdatefrom | $KohaDates %]</span>
[% END %]
</li>
[% ELSE %]
[% IF shipmentdateto %]
<li>
Shipment date:
All until [% shipmentdateto | $KohaDates %]
</li>
[% END %]
[% END %]
[% IF billingdatefrom %]
<li>
<span>Billing date:</span>
[% IF billingdateto %]
<span>From [% billingdatefrom | $KohaDates %]</span>
<span>To [% billingdateto | $KohaDates %]</span>
[% ELSE %]
<span>All since [% billingdatefrom | $KohaDates %]</span>
[% END %]
</li>
[% ELSE %]
[% IF billingdateto %]
<li>
Billing date:
All until [% billingdateto | $KohaDates %]
</li>
[% END %]
[% END %]
[% IF ( isbneanissn ) %]
<li>ISBN/EAN/ISSN: [% isbneanissn | html %]</li>
[% END %]
[% IF ( title ) %]
<li>Title: [% title | html %]</li>
[% END %]
[% IF ( author ) %]
<li>Author: [% author | html %]</li>
[% END %]
[% IF ( publisher ) %]
<li>Publisher: [% publisher | html %]</li>
[% END %]
[% IF ( publicationyear ) %]
<li>Publication year: [% publicationyear | html %]</li>
[% END %]
[% IF ( branch ) %]
<li>Library: [% Branches.GetName( branch ) | html %]</li>
[% END %]
</ul>
</p>
[% END # /IF invoices %]
[% ELSE %]
<p>Use the search form on the left to find invoices.</p>
[% END %]<!-- do_search -->
</main>
</div> <!-- /.col-sm-10.col-sm-push-2 -->
<div class="col-sm-2 col-sm-pull-10">
<aside>
<form action="" method="get">
<fieldset class="sidebar brief">
<h3>Search filters</h3>
<ol>
<li>
<label for="invoicenumber">Invoice number</label>
<input type="text" id="invoicenumber" name="invoicenumber" value="[% invoicenumber | html %]"
class="focus" />
</li>
<li>
<label for="supplier">Vendor:</label>
<select id="supplier" name="supplierid">
<option value="">All</option>
[% FOREACH supplier IN suppliers_loop %]
[% IF ( supplier.selected ) %]
<option selected="selected" value="[% supplier.booksellerid | html %]">[% supplier.suppliername | html %]</option>
[% ELSE %]
<option value="[% supplier.booksellerid | html %]">[% supplier.suppliername | html %]</option>
[% END %]
[% END %]
</select>
</li>
<li>
<fieldset class="brief">
<legend>Shipment date</legend>
<ol>
<li>
<label for="shipmentdatefrom">From:</label>
<input type="text" id="shipmentdatefrom" name="shipmentdatefrom" size="10" value="[% shipmentdatefrom | html %]" class="flatpickr" data-date_to="shipmentdateto" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="shipmentdateto">To:</label>
<input type="text" id="shipmentdateto" name="shipmentdateto" size="10" value="[% shipmentdateto | html %]" class="flatpickr" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
</ol>
</fieldset>
</li>
<li>
<fieldset class="brief">
<legend>Billing date</legend>
<ol>
<li>
<label for="billingdatefrom">From:</label>
<input type="text" id="billingdatefrom" name="billingdatefrom" size="10" value="[% billingdatefrom | html %]" class="flatpickr" data-date_to="billingdateto" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="billingdateto">To:</label>
<input type="text" id="billingdateto" name="billingdateto" size="10" value="[% billingdateto | html %]" class="flatpickr" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
</ol>
</fieldset>
</li>
<li>
<label for="isbneanissn">ISBN / EAN / ISSN:</label>
<input type="text" id="isbneanissn" name="isbneanissn" value="[% isbneanissn | html %]" />
</li>
<li>
<label for="title">Title:</label>
<input type="text" id="title" name="title" value="[% title | html %]" />
</li>
<li>
<label for="author">Author:</label>
<input type="text" id="author" name="author" value="[% author | html %]" />
</li>
<li>
<label for="publisher">Publisher:</label>
<input type="text" id="publisher" name="publisher" value="[% publisher | html %]" />
</li>
<li>
<label for="publicationyear">Publication year:</label>
<input type="text" id="publicationyear" name="publicationyear" value="[% publicationyear | html %]" />
</li>
<li>
<label for="branch">Library:</label>
<select id="branch" name="branch">
<option value="">All</option>
[%# FIXME Should not we filter the libraries %]
[% PROCESS options_for_libraries libraries => Branches.all( selected => branch, unfiltered => 1 ) %]
</select>
</li>
[% FOR field IN additional_fields_for_invoice %]
<li>
<label for="additional_field_[% field.id | html %]ID"> [% field.name | html %]: </label>
[% IF field.authorised_value_category %]
<select id="additional_field_[% field.id | html %]" name="additional_field_[% field.id | html %]">
<option value="">All</option>
[% FOREACH av IN AuthorisedValues.GetAuthValueDropbox(field.authorised_value_category) %]
[% IF av.authorised_value == additional_field_filters.${field.id} %]
<option value="[% av.authorised_value | html %]" selected="selected">[% av.lib | html %]</option>
[% ELSE %]
<option value="[% av.authorised_value | html %]">[% av.lib | html %]</option>
[% END %]
[% END %]
</select>
[% ELSE %]
<input id="additional_field_[% field.id | html %]" type="text" value="[% additional_field_filters.${field.id} | html %]" name="additional_field_[% field.id | html %]" />
[% END %]
</li>
[% END %]
</ol>
</fieldset> <!-- /.sidebar.brief -->
<fieldset class="action">
<input type="submit" class="btn btn-primary" value="Search" />
</fieldset>
<input type="hidden" name="op" id="op" value="do_search" />
</form>
[% INCLUDE 'acquisitions-menu.inc' %]
</aside>
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
</div> <!-- /.row -->
[% MACRO jsinclude BLOCK %]
[% Asset.js("js/acquisitions-menu.js") | $raw %]
[% INCLUDE 'datatables.inc' %]
[% INCLUDE 'calendar.inc' %]
<script>
$(document).ready(function() {
$('[id^="CheckAll"]').click( function() {
var table_id = "#" + $(this).attr('data-cb') + "resultst";
$(table_id).find('.select-invoice[type="checkbox"]').each( function() {
$(this).prop("checked" , true );
});
});
$('[id^="UncheckAll"]').click( function() {
var table_id = "#" + $(this).attr('data-cb') + "resultst";
$(table_id).find('.select-invoice[type="checkbox"]').each( function() {
$(this).prop("checked" , false );
});
});
$(".delete_invoice").click(function(){
return confirmDelete(_("Are you sure you want to delete this invoice?"));
});
var resultst = $("table.result").dataTable($.extend(true, {}, dataTablesDefaults, {
bPaginate: false,
aoColumnDefs: [
{ "bSortable": false, "aTargets": [1, -1] },
{ "bVisible": false, "aTargets": [0] }
],
autoWidth: false
}));
$(".show_only_subscription").prop("checked", false);
$(".show_only_subscription").click(function(){
var table_id = $(this).attr("data-tableid");
if ( $(this).prop("checked") ) {
$('#'+table_id).dataTable().fnFilter( "1", 0, true );
} else {
$('#'+table_id).dataTable().fnFilter( '', 0 );
}
});
$('#open_sel,#close_sel').click(function () {
var referer = $(this).attr("data-referer");
var op = $(this).attr("data-op");
var table = $(this).data('table');
var invoice_link = "invoice.pl?op="+op;
if ($('#' + table + ' .select-invoice:checked').length) {
$('#' + table + ' .select-invoice:checked').each(function () {
var row = $(this).parents('tr');
invoice_link = invoice_link + "&amp;invoiceid="+$(row).attr('data-invoiceid');
});
window.location.href =invoice_link +"&amp;"+referer;
} else {
alert ("Please select at least one invoice." );
}
});
$('.merge').click(function (ev) {
var booksellerid;
var mismatch;
var invoices = [ ];
var table = $(this).data('table');
if ($('#' + table + ' .select-invoice:checked').size() < 2) {
alert(_("You must select at least two invoices to merge."));
return false;
}
$('#' + table + ' .select-invoice:checked').each(function () {
var row = $(this).parents('tr');
booksellerid = booksellerid || $(row).attr('data-booksellerid');
if (booksellerid !== $(row).attr('data-booksellerid')) {
mismatch = true;
}
invoices.push({ 'invoiceid': $(row).attr('data-invoiceid'),
'invoicenumber': $(row).find('td:nth-child(2) a').text(),
'shipmentdate': $(row).attr('data-shipmentdate'),
'billingdate': $(row).attr('data-billingdate'),
'shipmentcost': $(row).attr('data-shipmentcost'),
'shipment_budgetid': $(row).attr('data-shipment_budgetid'),
'closedate': $(row).attr('data-closedate'), });
$('#merge_invoice_form').append('<input type="hidden" name="merge" value="' + $(row).attr('data-invoiceid') + '" />');
});
if (mismatch) {
alert(_("All invoices for merging must be from the same vendor"));
} else {
$('#merge_table tbody').empty();
$.each(invoices, function (idx, invoice) {
var row = $('<tr data-invoiceid="' + invoice.invoiceid + '"><td>' + invoice.invoicenumber + '</td><td>' + invoice.shipmentdate + '</td><td>' + invoice.billingdate + '</td><td>' + invoice.shipmentcost + '</td></tr>');
$(row).appendTo('#merge_table tbody');
$(row).click(function () {
$('#merge_table tbody tr').removeClass('active');
$(this).addClass('active');
$.each(['invoiceid', 'shipmentdate', 'billingdate', 'shipmentcost', 'shipment_budgetid', 'invoicenumber'], function (idx, prop) {
$('#merge_' + prop).val(invoice[prop]);
});
if (invoice.closedate) {
$('#merge_status').text(_("Closed on %s").format(invoice.closedate));
} else {
$('#merge_status').text(_("Open"));
}
});
});
$('#merge_table tbody tr:first').click();
$('#merge_invoices').show();
}
});
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]