Owen Leonard
e86a951617
This patch adds an upgraded copy of the DataTables plugin to the jQuery plugin directory outside the theme directories. Copies of the old DataTables plugin scripts have been left in the old location while templates are incrementally updated. To test, visit each affected page in Acquisitions and confirm that table sorting still words correctly: - Acquisitions home - Acquisitions -> Late orders - Acquisitions -> Order search - Acquisitions -> Ordered (from table of available funds) - Acquisitions -> Spent (from table of available funds) - Acquisitions -> Vendor search - Acquisitions -> Vendor detail - Acquisitions -> Vendor -> Basket - Acquisitions -> Vendor -> Basket -> Add order from existing record -> Add order from suggestion -> Add order from subscription -> Add order from external source -> Add order from staged file - Acquisitions -> Vendor -> Basket groups - Acquisitions -> Vendor -> Uncertain prices - Acquisitions -> Vendor -> Invoices - Acquisitions -> Vendor -> Invoices -> Invoice - Acquisitions -> Vendor -> Receive shipments - Acquisitions -> Vendor -> Receive shipments -> Receipt summary (click invoice number) Also test one or more pages which have not been modified to confirm that old DataTables assets are still in place and working (ex: Circulation, Quotes editor, Saved reports, etc.) Signed-off-by: Srdjan <srdjan@catalyst.net.nz> Edit: Rebased on current master Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> All tests und QA script pass. I found some smaller bugs, that also appeared on master without the patch applied. For some datatables I struggled with a result set of over 5.000 lines - there is room for improvement where a lot of data can be shown. testing notes: - Acquisitions home - Amounts don't sort correctly before and after the patch, see bug 10792. - Acquisitions -> Late orders - OK. - Acquisitions -> Order search - OK. - Acquisitions -> Ordered (from table of available funds) - OK. - Acquisitions -> Spent (from table of available funds) - OK. - Acquisitions -> Vendor detail - OK. - Acquisitions -> Vendor -> Basket - OK. - Acquisitions -> Vendor -> Basket -> Add order from existing record - Datatables seems not to be in use here? -> Add order from suggestion - OK. -> Add order from subscription - OK. -> Add order from external source - OK. -> Add order from staged file Signed-off-by: Galen Charlton <gmc@esilibrary.com>
339 lines
14 KiB
Text
339 lines
14 KiB
Text
[% USE KohaBranchName %]
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Koha › Basket grouping for [% booksellername |html %]</title>
|
|
<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
[% INCLUDE 'datatables.inc' %]
|
|
<script type="text/javascript" src="[% yuipath %]/utilities/utilities.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/button/button-min.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/container/container_core-min.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/menu/menu-min.js"></script>
|
|
<script type="text/javascript" src="[% themelang %]/js/acq.js"></script>
|
|
[% IF ( grouping ) %]
|
|
<script type="text/javascript" src="[% yuipath %]/yahoo-dom-event/yahoo-dom-event.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/animation/animation-min.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/dragdrop/dragdrop-min.js"></script>
|
|
<script type="text/javascript" src="[% yuipath %]/element/element-min.js"></script>
|
|
<style type="text/css">
|
|
/*margin and padding on body element
|
|
can introduce errors in determining
|
|
element position and are not recommended;
|
|
we turn them off as a foundation for YUI
|
|
CSS treatments. */
|
|
body {
|
|
margin:0;
|
|
padding:0;
|
|
}
|
|
#basketgroupcolumns {
|
|
width: 58em;
|
|
}
|
|
#ungrouped {
|
|
overflow: auto;
|
|
height: 400px;
|
|
}
|
|
|
|
.draglist{
|
|
width: 200px;
|
|
height: 300px;
|
|
overflow: auto;
|
|
}
|
|
|
|
div.workarea_alt { padding: 5px; float:left; width: 95%;}
|
|
div.closed { background-color: pink; padding:10px; float:left; width: 45%;}
|
|
|
|
ul.draglist {
|
|
position: relative;
|
|
background: #EEE;
|
|
padding-bottom:10;
|
|
border: 1px inset gray;
|
|
list-style: none;
|
|
margin:0;
|
|
padding: 5px;
|
|
}
|
|
|
|
ul.draglist li {
|
|
margin: 1px;
|
|
cursor: move;
|
|
list-style: none;
|
|
}
|
|
|
|
ul.draglist_alt {
|
|
position: relative;
|
|
border: 1px solid gray;
|
|
list-style: none;
|
|
margin: 0;
|
|
background: #f7f7f7;
|
|
padding: 5px;
|
|
cursor: move;
|
|
}
|
|
|
|
ul.draglist_alt li {
|
|
margin: 1px;
|
|
list-style: none;
|
|
}
|
|
|
|
li.grouped {
|
|
background-color: #D1E6EC;
|
|
border:1px solid #7EA6B2;
|
|
list-style: none;
|
|
}
|
|
|
|
li.ungrouped {
|
|
background-color: #D8D4E2;
|
|
border:1px solid #6B4C86;
|
|
}
|
|
|
|
fieldset.various li {
|
|
list-style: none;
|
|
clear: none;
|
|
}
|
|
|
|
</style>
|
|
[% END %]
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
YAHOO.util.Event.onDOMReady(DDApp.init, DDApp, true);
|
|
|
|
var MSG_CONFIRM_CLOSE_BASKETGROUP = _("Are you sure you want to close this basketgroup?");
|
|
var MSG_CLOSE_EMPTY_BASKET = _("Why close an empty basket?");
|
|
var MSG_SAVE_BEFORE_PRINTING = _("You need to save the page before printing");
|
|
var MSG_REOPEN_BASKETGROUP = _("reopen basketgroup");
|
|
var MSG_FILE_DOWNLOAD_ERROR = _("Error downloading the file");
|
|
|
|
function submitForm(form) {
|
|
if (form.close.checked == true) {
|
|
var input = document.createElement("input");
|
|
input.setAttribute("type", "hidden");
|
|
input.setAttribute("name", "closed");
|
|
input.setAttribute("value", "1");
|
|
form.appendChild(input);
|
|
}
|
|
}
|
|
|
|
$(document).ready(function() {
|
|
$("#basket_groups").tabs();
|
|
|
|
$("table").dataTable($.extend(true, {}, dataTablesDefaults, {
|
|
"aoColumnDefs": [
|
|
{ "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
|
|
],
|
|
sDom: 't',
|
|
"bAutoWidth": false
|
|
} ));
|
|
|
|
});
|
|
|
|
|
|
//]]>
|
|
</script>
|
|
</head>
|
|
<body id="acq_basketgroup" 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 ( grouping ) %]
|
|
<a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% booksellername |html %]</a> › <a href="/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=[% booksellerid %]">Basket grouping</a> › Add basket group for [% booksellername |html %]</div>
|
|
[% ELSE %]
|
|
<a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% booksellername |html %]</a> › Basket grouping</div>
|
|
[% END %]
|
|
|
|
<div id="doc3" class="yui-t2">
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
|
|
[% IF ( grouping ) %]
|
|
<h1>Add basket group for <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% booksellername |html %]</a></h1>
|
|
<div id="basketgroupcolumns" class="yui-g">
|
|
<div class="yui-u">
|
|
|
|
<form action="[% scriptname %]" method="post" name="basketgroups" id="basketgroups">
|
|
<div id="groups">
|
|
<fieldset class="brief">
|
|
<div class="workarea_alt" >
|
|
<h3>Ungrouped baskets</h3>
|
|
<ul id="ungrouped" class="draglist_alt">
|
|
[% IF ( baskets ) %]
|
|
[% FOREACH basket IN baskets %]
|
|
<li class="ungrouped" id="b-[% basket.basketno %]" >
|
|
<a href="basket.pl?basketno=[% basket.basketno %]">
|
|
[% IF ( basket.basketname ) %]
|
|
[% basket.basketname %]
|
|
[% ELSE %]
|
|
No name, basketnumber: [% basket.basketno %]
|
|
[% END %]
|
|
</a>, <br />
|
|
Total: [% basket.total %]
|
|
<input type="hidden" class="basket" name="basket" value="[% basket.basketno %]" />
|
|
</li>
|
|
[% END %]
|
|
[% END %]
|
|
</ul>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</form>
|
|
|
|
</div>
|
|
|
|
<div class="yui-u first">
|
|
<form action="" method="post" id="groupingform" onsubmit="return submitForm(this)">
|
|
<fieldset id="various" class="brief">
|
|
<ol>
|
|
<li><label for="basketgroupname">Basket group name:</label>
|
|
<input type="text" name="basketgroupname" id="basketgroupname" value="[% name %]" /></li>
|
|
<li><label for="billingplace">Billing place:</label>
|
|
<select name="billingplace" id="billingplace" style="width:13em;">
|
|
<option value="">--</option>
|
|
[% FOREACH billingplaceloo IN billingplaceloop %]
|
|
[% IF ( billingplaceloo.selected ) %]<option value="[% billingplaceloo.value %]" selected="selected">[% billingplaceloo.branchname %]</option>
|
|
[% ELSE %]<option value="[% billingplaceloo.value %]">[% billingplaceloo.branchname %]</option>[% END%]
|
|
[% END %]
|
|
</select></li>
|
|
<li><label for="deliveryplace">Delivery place:</label>
|
|
<select name="deliveryplace" id="deliveryplace" style="width:13em;">
|
|
<option value="">--</option>
|
|
[% FOREACH deliveryplaceloo IN deliveryplaceloop %]
|
|
[% IF ( deliveryplaceloo.selected ) %]<option value="[% deliveryplaceloo.value %]" selected="selected">[% deliveryplaceloo.branchname %]</option>
|
|
[% ELSE %]<option value="[% deliveryplaceloo.value %]">[% deliveryplaceloo.branchname %]</option>[% END %]
|
|
[% END %]
|
|
</select></li>
|
|
<li><p>or</p></li>
|
|
<li><label for="freedeliveryplace">Delivery place:</label>
|
|
<textarea cols="26" rows="3" name="freedeliveryplace" id="freedeliveryplace">[% freedeliveryplace %]</textarea></li>
|
|
<li><label for="deliverycomment">Delivery comment:</label>
|
|
<textarea cols="26" rows="3" name="deliverycomment" id="deliverycomment">[% deliverycomment %]</textarea>
|
|
</li>
|
|
<li><span class="label">Baskets in this group:</span>
|
|
<ul class="draglist" id="bg">
|
|
[% FOREACH selectedbasket IN selectedbaskets %]
|
|
<li class="grouped" id="b-[% selectedbasket.basketno %]" >
|
|
<a href="basket.pl?basketno=[% selectedbasket.basketno %]">
|
|
[% IF ( selectedbasket.basketname ) %]
|
|
[% selectedbasket.basketname %]
|
|
[% ELSE %]
|
|
No name, basketnumber: [% selectedbasket.basketno %]
|
|
[% END %]
|
|
</a>, <br />
|
|
Total: [% selectedbasket.total %]
|
|
<input type="hidden" class="basket" name="basket" value="[% selectedbasket.basketno %]" />
|
|
</li>
|
|
[% END %]
|
|
</ul>
|
|
</li>
|
|
<li><label><input type="checkbox" id="close" name="close" /> Close basket group</label></li>
|
|
</ol>
|
|
</fieldset>
|
|
|
|
<fieldset class="action"><input type="hidden" name="booksellerid" value="[% booksellerid %]" />
|
|
[% IF ( basketgroupid ) %]
|
|
<input type="hidden" name="basketgroupid" value="[% basketgroupid %]" />
|
|
[% END %]
|
|
<input type="hidden" name="op" value="attachbasket" />
|
|
<input type="submit" value="Save" /> <a href="/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=[% booksellerid %]" class="cancel">Cancel</a>
|
|
</fieldset>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
[% ELSE %]
|
|
|
|
<div id="toolbar" class="btn-toolbar">
|
|
<div class="btn-group"><a href="/cgi-bin/koha/acqui/basketgroup.pl?op=add&booksellerid=[% booksellerid %]" class="btn btn-small" id="newbasketgroup"><i class="icon-plus"></i> New basket group</a></div>
|
|
</div>
|
|
<h1>Basket grouping for <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% booksellername |html %]</a></h1>
|
|
|
|
<div id="basket_groups" class="toptabs">
|
|
<ul class="ui-tabs-nav">
|
|
[% UNLESS ( closed ) %]<li class="ui-tabs-selected"><a href="#opened">Open</a></li>
|
|
[% ELSE%]<li><a href="#opened">Open</a></li>[% END %]
|
|
[% IF ( closed ) %]<li class="ui-tabs-selected"><a href="#closed">Closed</a></li>
|
|
[% ELSE %]<li><a href="#closed">Closed</a></li>[% END %]
|
|
</ul>
|
|
<div id="opened">
|
|
<table id="basket_group_opened">
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Number</th>
|
|
<th>Billing place</th>
|
|
<th>Delivery place</th>
|
|
<th>Number of baskets</th>
|
|
<th>Action</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
[% FOREACH basketgroup IN basketgroups %]
|
|
[% UNLESS ( basketgroup.closed ) %]
|
|
<tr>
|
|
<td>[% IF ( basketgroup.name ) %]
|
|
[% basketgroup.name %]
|
|
[% ELSE %]
|
|
Basket group no. [% basketgroup.id %]
|
|
[% END %]
|
|
</td>
|
|
<td>[% basketgroup.id %]</td>
|
|
<td>[% basketgroup.billingplace | $KohaBranchName %]</td>
|
|
<td>[% IF (basketgroup.freedeliveryplace) %]Free delivery place[% ELSE %][% basketgroup.deliveryplace | $KohaBranchName %][% END %]</td>
|
|
<td>[% basketgroup.basketsqty %]</td>
|
|
<td>
|
|
<input type="button" onclick="closeandprint([% basketgroup.id %])" value="Close and print" />
|
|
<form action="/cgi-bin/koha/acqui/basketgroup.pl" method="get"><input type="hidden" name="op" value="add" /><input type="hidden" name="booksellerid" value="[% basketgroup.booksellerid %]" /><input type="hidden" name="basketgroupid" value="[% basketgroup.id %]" /><input type="submit" value="Edit" /></form>
|
|
<form action="/cgi-bin/koha/acqui/basketgroup.pl" method="get"><input type="hidden" name="op" value="delete" /><input type="hidden" name="booksellerid" value="[% basketgroup.booksellerid %]" /><input type="hidden" name="basketgroupid" value="[% basketgroup.id %]" /><input type="submit" value="Delete" /></form>
|
|
</td>
|
|
</tr>
|
|
[% END %]
|
|
[% END %]
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div id="closed">
|
|
<table id="basket_group_closed">
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Number</th>
|
|
<th>Billing place</th>
|
|
<th>Delivery place</th>
|
|
<th>Number of baskets</th>
|
|
<th>Action</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
[% FOREACH basketgroup IN basketgroups %]
|
|
[% IF ( basketgroup.closed ) %]
|
|
<tr>
|
|
<td>
|
|
[% IF ( basketgroup.name ) %]
|
|
[% basketgroup.name %]
|
|
[% ELSE %]
|
|
Basket group no. [% basketgroup.id %]
|
|
[% END %]
|
|
</td>
|
|
<td>[% basketgroup.id %]</td>
|
|
<td>[% basketgroup.billingplace | $KohaBranchName %]</td>
|
|
<td>[% IF (basketgroup.freedeliveryplace) %]Free delivery place[% ELSE %][% basketgroup.deliveryplace | $KohaBranchName %][% END %]</td>
|
|
<td>[% basketgroup.basketsqty %]</td>
|
|
<td>
|
|
<form action="/cgi-bin/koha/acqui/basketgroup.pl" method="get"><input type="hidden" name="op" value="reopen" /><input type="hidden" name="booksellerid" value="[% basketgroup.booksellerid %]" /><input type="hidden" name="basketgroupid" value="[% basketgroup.id %]" /><input type="submit" value="Reopen" /></form>
|
|
<form action="/cgi-bin/koha/acqui/basketgroup.pl" method="get"><input type="hidden" name="op" value="print" /><input type="hidden" name="basketgroupid" value="[% basketgroup.id %]" /><input type="submit" value="Print" /></form>
|
|
<form action="/cgi-bin/koha/acqui/basketgroup.pl" method="get"><input type="hidden" name="op" value="export" /><input type="hidden" name="basketgroupid" value="[% basketgroup.id %]" /><input type="submit" value="Export as CSV" /></form>
|
|
</td>
|
|
</tr>
|
|
[% END %]
|
|
[% END %]
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
[% END %]
|
|
</div>
|
|
</div>
|
|
<div class="yui-b">
|
|
[% IF ( booksellerid ) %]
|
|
[% INCLUDE 'vendor-menu.inc' %]
|
|
[% END %]
|
|
[% INCLUDE 'acquisitions-menu.inc' %]
|
|
</div>
|
|
</div>
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|