David Cook
04b4afbd92
This patch sets the bStateSave parameter for the "Pending orders" and "Already received" Datatables in Acquisitions, which uses a cookie to save the "pagination information, display length, filtering and sorting". It also sets the iCookieDuration parameter to 1000 days (the default value is 2 hours otherwise). It also adds an "all" option to the dro-down menu using the aLengthMenu parameter. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
408 lines
18 KiB
Text
408 lines
18 KiB
Text
[% INCLUDE 'doc-head-open.inc' %]
|
||
<title>Koha › Acquisitions › [% IF ( date ) %]
|
||
Receipt summary for [% name %] [% IF ( invoice ) %]invoice [% invoice %][% END %] on [% formatteddatereceived %][% ELSE %]Receive orders from [% name %][% END %]</title>
|
||
<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
|
||
[% INCLUDE 'doc-head-close.inc' %]
|
||
<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
|
||
[% INCLUDE 'datatables-strings.inc' %]
|
||
<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
|
||
[% INCLUDE 'greybox.inc' %]
|
||
<script type="text/javascript" src="[% yuipath %]/json/json-min.js"></script>
|
||
<script type="text/javascript">
|
||
//<![CDATA[
|
||
|
||
dt_overwrite_html_sorting_localeCompare();
|
||
|
||
$(document).ready(function(){
|
||
var pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, {
|
||
"bStateSave": true,
|
||
"iCookieDuration": 60*60*24*1000, // 1000 days
|
||
"aLengthMenu": [[10, 25, 50, 100, -1], [10, 25, 50, 100, "All"]],
|
||
"aoColumnDefs": [
|
||
{ "aTargets": [ 3, 8, 9 ], "bSortable": false, "bSearchable": false },
|
||
],
|
||
"aoColumns": [
|
||
{ "sType": "num-html" },
|
||
{ "sType": "num-html" },
|
||
{ "sType": "html" },
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
],
|
||
"sPaginationType": "four_button"
|
||
} ) );
|
||
var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, {
|
||
"bStateSave": true,
|
||
"iCookieDuration": 60*60*24*1000, // 1000 days
|
||
"aLengthMenu": [[10, 25, 50, 100, -1], [10, 25, 50, 100, "All"]],
|
||
"aoColumnDefs": [
|
||
{ "aTargets": [ 3, -1 ], "bSortable": false, "bSearchable": false },
|
||
],
|
||
"aoColumns": [
|
||
{ "sType": "num-html" },
|
||
{ "sType": "num-html" },
|
||
{ "sType": "html" },
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
null,
|
||
null
|
||
],
|
||
"sPaginationType": "four_button"
|
||
} ) );
|
||
/*
|
||
$("#pendingt").tablesorter({
|
||
headers: { 2: { sorter: 'articles' },3: { sorter: false },8:{sorter:false}}
|
||
});
|
||
*/
|
||
|
||
});
|
||
|
||
// Case-insensitive version of jquery's contains function
|
||
jQuery.extend(jQuery.expr[':'], {
|
||
icontains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0"
|
||
});
|
||
|
||
// Contains exactly function
|
||
jQuery.extend(jQuery.expr[':'], {
|
||
containsExactly: "$(a).text() == m[3]"
|
||
});
|
||
|
||
//]]>
|
||
</script>
|
||
<script type="text/javascript">
|
||
//<![CDATA[
|
||
function confirm_delete_item(ordernumber, basketno, biblionumber) {
|
||
var is_confirmed = confirm(_('Are you sure you want to delete this order ?'));
|
||
if (is_confirmed) {
|
||
window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno="+basketno+"&quantity=0&biblionumber="+biblionumber;
|
||
}
|
||
}
|
||
|
||
function confirm_delete_biblio(ordernumber, basketno, biblionumber) {
|
||
var is_confirmed = confirm(_('Are you sure you want to delete this catalog record and order ?'));
|
||
if (is_confirmed) {
|
||
window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno="+basketno+"&quantity=0&biblionumber="+biblionumber+"&delbiblio=1";
|
||
}
|
||
}
|
||
//]]>
|
||
</script>
|
||
</head>
|
||
<body id="acq_parcel" class="acq">
|
||
[% INCLUDE 'header.inc' %]
|
||
[% INCLUDE 'acquisitions-search.inc' %]
|
||
|
||
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> ›
|
||
[% IF ( datereceived ) %]
|
||
Receipt summary for <i>[% name %]</i>
|
||
[% IF ( invoice ) %]
|
||
<i>[ [% invoice %] ]</i>
|
||
[% END %]
|
||
on <i>[% formatteddatereceived %]</i>
|
||
[% ELSE %]
|
||
Receive orders from [% name %]
|
||
[% END %]
|
||
</div>
|
||
|
||
<div id="doc3" class="yui-t2">
|
||
|
||
<div id="bd">
|
||
<div id="yui-main">
|
||
<div class="yui-b">
|
||
[% IF ( receive_error ) %]
|
||
<div class="dialog alert">
|
||
<h3>Error adding items:</h3>
|
||
<ul>
|
||
[% FOREACH error_loo IN error_loop %]
|
||
<li>[% error_loo.error_param %][% IF ( error_loo.error_duplicate_barcode ) %]Duplicate Barcode[% END %] <!-- todo: other error conditions come here. --></li>
|
||
[% END %]
|
||
</ul>
|
||
</div>
|
||
[% END %]
|
||
<h1>
|
||
[% IF ( datereceived ) %]
|
||
Receipt summary for <i>[% name %]</i> [% IF ( invoice ) %] <i> [ [% invoice %] ] </i>[% END %] on <i>[% formatteddatereceived %]</i>
|
||
[% ELSE %]
|
||
Receive orders from [% name %]
|
||
[% END %]
|
||
</h1>
|
||
|
||
[% IF ( success_delorder ) %]
|
||
<div class="dialog message">The order has been successfully canceled.</div>
|
||
[% ELSE %]
|
||
[% IF ( error_delitem ) %]
|
||
<div class="dialog alert">The order has been canceled, although one or more items could not have been deleted.</div>
|
||
[% END %]
|
||
[% IF ( error_delbiblio ) %]
|
||
<div class="dialog alert">The order has been canceled, although the record has not been deleted.</div>
|
||
[% END %]
|
||
[% END %]
|
||
|
||
[% IF (error_cancelling_receipt) %]
|
||
<div class="error">
|
||
Cannot cancel receipt. Possible reasons :
|
||
<ul>
|
||
<li>
|
||
The order line you trying to cancel was created from a partial receipt
|
||
of another order line which is already received. Try to cancel this
|
||
one first and retry.
|
||
</li>
|
||
<li>
|
||
The order line you trying to cancel was created from a partial receipt
|
||
of another order line which has been deleted. Cancellation is not
|
||
possible.
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
[% END %]
|
||
|
||
<div id="acqui_receive_summary">
|
||
<p><strong>Invoice number:</strong> [% invoice %] <strong>Received by:</strong> [% loggedinusername %] <strong>On:</strong> [% formatteddatereceived %]</p>
|
||
</div>
|
||
[% UNLESS (invoiceclosedate) %]
|
||
<div id="acqui_receive_search">
|
||
<h3>Pending orders</h3>
|
||
|
||
[% IF ( loop_orders ) %]<table id="pendingt">
|
||
<thead>
|
||
<tr>
|
||
<th>Basket</th>
|
||
<th>Order line</th>
|
||
<th>Summary</th>
|
||
<th>View record</th>
|
||
<th>Quantity</th>
|
||
<th>Unit cost</th>
|
||
<th>Order cost</th>
|
||
<th>Fund</th>
|
||
<th> </th>
|
||
<th> </th>
|
||
</tr>
|
||
</thead>
|
||
<tbody class="filterclass">
|
||
[% FOREACH loop_order IN loop_orders %]
|
||
<tr>
|
||
<td class="basketfilterclass"><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_order.basketno %]">[% loop_order.basketno %]</a></td>
|
||
<td class="orderfilterclass"><a href="neworderempty.pl?ordernumber=[% loop_order.ordernumber %]&booksellerid=[% loop_order.booksellerid %]">[% loop_order.ordernumber %]</a></td>
|
||
<td class="summaryfilterclass">
|
||
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_order.biblionumber %]">[% loop_order.title |html %]</a>
|
||
[% IF ( loop_order.author ) %] by [% loop_order.author %][% END %]
|
||
[% IF ( loop_order.isbn ) %] – [% loop_order.isbn %][% END %]
|
||
[% IF ( loop_order.publishercode ) %]<br />Publisher :[% loop_order.publishercode %][% END %]
|
||
[% IF ( loop_order.suggestionid ) %]
|
||
<br/>
|
||
Suggested by: [% loop_order.surnamesuggestedby %][% IF ( loop_order.firstnamesuggestedby ) %], [% loop_order.firstnamesuggestedby %] [% END %]
|
||
(<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_order.suggestionid %]&op=show">suggestion #[% loop_order.suggestionid %]</a>)
|
||
[% END %]
|
||
<br />
|
||
[% IF ( loop_order.notes ) %]
|
||
<p class="ordernote"><strong>Note: </strong>[% loop_order.notes|html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Change note</a>]</p>
|
||
[% ELSE %]
|
||
[<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Add note</a>]
|
||
[% END %]
|
||
</td>
|
||
<td><a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td>
|
||
<td>[% loop_order.quantity %]</td>
|
||
<td>[% loop_order.ecost %]</td>
|
||
<td>[% loop_order.ordertotal %]</td>
|
||
<td>[% loop_order.budget_name %]</td>
|
||
<td>
|
||
<a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&invoiceid=[% invoiceid %]">Receive</a>
|
||
</td>
|
||
<td>
|
||
[% IF ( loop_order.left_holds_on_order ) %]
|
||
<span class="button" title="Can't delete order, ([% loop_order.holds_on_order %]) holds are linked with this order cancel holds first">Can't delete order</span><br>
|
||
[% ELSE %]
|
||
<a href="javascript:confirm_delete_item([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order</a><br>
|
||
[% END %]
|
||
[% IF ( loop_order.can_del_bib ) %]
|
||
<a href="javascript:confirm_delete_biblio([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order and catalog record</a><br>
|
||
[% ELSE %]
|
||
<span class="button" title="Can't delete catalog record, see constraints below">Can't delete order and catalog record</span><br>
|
||
[% END %]
|
||
[% IF ( loop_order.left_item ) %]
|
||
<b title="Can't delete catalog record, because of [% loop_order.items %] existing item(s)" >[% loop_order.items %] item(s) left</b><br>
|
||
[% END %]
|
||
[% IF ( loop_order.left_biblio ) %]
|
||
<b title="Can't delete catalog record, delete other orders linked to it first">[% loop_order.biblios %] order(s) left</b><br>
|
||
[% END %]
|
||
[% IF ( loop_order.left_subscription ) %]
|
||
<b title="Can't delete catalog record, delete subscriptions first">[% loop_order.subscriptions %] subscription(s) left</b><br>
|
||
[% END %]
|
||
[% IF ( loop_order.left_holds ) %]
|
||
<b title="Can't delete catalog record or order, cancel holds first">[% loop_order.holds %] hold(s) left</b>
|
||
[% END %]
|
||
</td>
|
||
</tr>
|
||
[% END %]
|
||
</tbody>
|
||
</table>[% ELSE %]There are no pending orders.[% END %]
|
||
<div id="resultnumber">
|
||
<!-- Row of numbers corresponding to search result pages -->
|
||
[% IF ( displayprev ) %]
|
||
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% prevstartfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber"><< Previous</a>
|
||
[% END %]
|
||
[% FOREACH number IN numbers %]
|
||
[% IF ( number.highlight ) %]
|
||
<span class="current">[% number.number %]</span>
|
||
[% ELSE %]
|
||
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% number.startfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber">[% number.number %]</a>
|
||
[% END %]
|
||
[% END %]
|
||
[% IF ( displaynext ) %]
|
||
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% nextstartfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber">Next >></a>
|
||
[% END %]
|
||
</div>
|
||
</div>
|
||
[% ELSE %]
|
||
<p>
|
||
Invoice is closed, so you can't receive orders anymore.
|
||
<a href="/cgi-bin/koha/acqui/invoice.pl?op=reopen&invoiceid=[% invoiceid %]&referer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid %]">Reopen it</a>.
|
||
</p>
|
||
[% END %]
|
||
|
||
<div id="acqui_receive_receivelist">
|
||
<h3>Already received</h3>
|
||
|
||
|
||
[% IF ( loop_received ) %]
|
||
<form action="/cgi-bin/koha/acqui/parcel.pl" method="get" name="orderform">
|
||
<table id="receivedt">
|
||
<thead>
|
||
<tr>
|
||
<th>Basket</th>
|
||
<th>Order line</th>
|
||
<th>Summary</th>
|
||
<th>View record</th>
|
||
<th>Quantity</th>
|
||
<th>Est cost</th>
|
||
<th>Actual cost</th>
|
||
<th>TOTAL</th>
|
||
<th></th>
|
||
</tr>
|
||
</thead>
|
||
<tfoot>
|
||
<tr>
|
||
<th colspan="7" class="total">Total tax exc.</th>
|
||
<th>[% total_gste %]</th>
|
||
<th></th>
|
||
</tr>
|
||
[% FOREACH book_foot IN book_foot_loop %]
|
||
<tr>
|
||
<th colspan="7">Total (GST [% book_foot.gstrate * 100 | format ("%.1f") %]%)</th>
|
||
<th>[% book_foot.value %]</th>
|
||
<th></th>
|
||
</tr>
|
||
[% END %]
|
||
<tr>
|
||
<th colspan="7" class="total">Total tax inc.</th>
|
||
<th>[% total_gsti %]</th>
|
||
<th></th>
|
||
</tr>
|
||
</tfoot>
|
||
<tbody class="filterclass">
|
||
[% FOREACH loop_receive IN loop_received %]
|
||
<tr>
|
||
<td><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_receive.basketno %]">[% loop_receive.basketno %]</a></td>
|
||
<td><a href="neworderempty.pl?ordernumber=[% loop_receive.ordernumber %]&booksellerid=[% booksellerid %]">[% loop_receive.ordernumber %]</a></td>
|
||
<td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_receive.biblionumber %]">[% loop_receive.title |html %]</a>
|
||
[% IF ( loop_receive.author ) %] / [% loop_receive.author %][% END %]
|
||
[% IF ( loop_receive.isbn ) %] - [% loop_receive.isbn %][% END %]
|
||
[% IF ( loop_receive.publishercode ) %]<br />Publisher :[% loop_receive.publishercode %][% END %]
|
||
[% IF ( loop_receive.suggestionid ) %]
|
||
<br/>
|
||
Suggested by: [% loop_receive.surnamesuggestedby %][% IF ( loop_receive.firstnamesuggestedby ) %], [% loop_receive.firstnamesuggestedby %] [% END %]
|
||
(<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_receive.suggestionid %]&op=show">suggestion #[% loop_receive.suggestionid %]</a>)
|
||
[% END %]
|
||
</td>
|
||
<td><a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_receive.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&id=[% loop_receive.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td>
|
||
<td>[% loop_receive.quantityreceived %]</td>
|
||
<td>[% loop_receive.ecost %]</td>
|
||
<td>[% loop_receive.unitprice %]</td>
|
||
<td>[% loop_receive.total %]</td>
|
||
<td>
|
||
[% IF (loop_receive.cannot_cancel) %]
|
||
[% span_title = BLOCK %]
|
||
Cannot cancel receipt of this order line because it
|
||
was created from a partial receipt of order line no.
|
||
[% loop_receive.parent_ordernumber %], which is
|
||
already received. Try cancelling this one first and
|
||
retry.
|
||
[% END %]
|
||
<span title="[% span_title | collapse %]">
|
||
Can't cancel receipt
|
||
</span>
|
||
[% ELSE %]
|
||
<a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]&op=cancelreceipt&ordernumber=[% loop_receive.ordernumber %]">Cancel receipt</a>
|
||
[% END %]
|
||
</td>
|
||
</tr>
|
||
[% END %]
|
||
</tbody>
|
||
</table>
|
||
</form>
|
||
[% ELSE %]There are no received orders.[% END %]
|
||
</div>
|
||
|
||
<!--<form action="/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% booksellerid %]" method="post">-->
|
||
[% IF (invoiceclosedate) %]
|
||
<a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid %]">View invoice</a>
|
||
[% ELSE %]
|
||
<form action="/cgi-bin/koha/acqui/invoice.pl" method="get">
|
||
<input type="hidden" name="invoiceid" value="[% invoiceid %]" />
|
||
<fieldset class="action">
|
||
<input type="submit" value="Finish receiving" />
|
||
</fieldset>
|
||
</form>
|
||
[% END %]
|
||
|
||
</div>
|
||
</div>
|
||
<div class="yui-b">
|
||
<form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post">
|
||
<fieldset class="brief">
|
||
|
||
<h4>Filter</h4>
|
||
|
||
<ol>
|
||
|
||
<li>
|
||
<label for="summaryfilter">ISBN, author or title :</label>
|
||
<input type="text" name="summaryfilter" id="summaryfilter" value="[% summaryfilter %]"/>
|
||
</li>
|
||
|
||
<li>
|
||
<label for="basketfilter">Basket :</label>
|
||
<input type="text" name="basketfilter" id="basketfilter" value="[% basketfilter %]"/>
|
||
</li>
|
||
|
||
<li>
|
||
<label for="orderfilter">Order line :</label>
|
||
<input type="text" name="orderfilter" id="orderfilter" value="[% orderfilter %]"/>
|
||
</li>
|
||
[% IF (UNIMARC) %]
|
||
<li>
|
||
<label for="eanfilter">EAN :</label>
|
||
<input type="text" name="eanfilter" id="eanfilter" value="[% eanfilter %]"/>
|
||
</li>
|
||
[% END %]
|
||
</ol>
|
||
<fieldset class="action">
|
||
<input type="hidden" value="search" name="op" />
|
||
<input type="hidden" value="[% invoiceid %]" name="invoiceid" />
|
||
<input type="submit" value="Filter" />
|
||
<a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]">Clear</a>
|
||
</fieldset>
|
||
|
||
|
||
</fieldset>
|
||
</form>
|
||
[% INCLUDE 'acquisitions-menu.inc' %]
|
||
</div>
|
||
</div>
|
||
[% INCLUDE 'intranet-bottom.inc' %]
|
||
|