Browse Source

Bug 26212: Remove the use of jquery.checkboxes plugin from pending offline circulations

This patch removes the use of the jquery.checkboxes plugin from the
pending offline circulations page, replacing it with in-page JS.

Unrelated: The JS-based creation of the "select all" and "clear all"
controls has been replaced with HTML links. Labels are added to the
results table to make checkbox selection easier.

To test, apply the patch and go to Circulation.

- Upload an offline circulation file (.koc) with multiple transactions.
  If you don't want to generate this file using the desktop application
  or Firefox add-on you can create a text file like this (tab
  separated):

  Version=1.0    Generator=koct-firefox    GeneratorVersion=0.1
  2020-08-14 13:24:21    issue    0109132    33000000093476

- Go to Pending offline circulation actions. You should see the list of
  transactions you uploaded.
- Test that the "Check all" and "Uncheck all" controls work correctly.

Signed-off-by: Amit Gupta <amit.gupta@informaticsglobal.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
20.11.x
Owen Leonard 4 years ago
committed by Jonathan Druart
parent
commit
c7174b204a
  1. 30
      koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/list.tt

30
koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/list.tt

@ -21,8 +21,11 @@
[% IF ( pending_operations ) %]
<form>
<p><span class="checkall"></span> |
<span class="clearall"></span></p>
<p>
<a id="CheckAll" href="#"><i class="fa fa-check"></i> Check all</a>
<a id="CheckNone" href="#"><i class="fa fa-remove"></i> Uncheck all</a>
</p>
<table id="operations">
<thead>
<tr>
@ -37,8 +40,10 @@
<tbody>
[% FOREACH operation IN pending_operations %]
<tr class="oc-[% operation.action | html %]">
<td><input type="checkbox" name="operationid" value="[% operation.operationid | html %]" /></td>
<td>[% operation.timestamp | html %]</td>
<td><input type="checkbox" name="operationid" id="operationid[% operation.operationid | html %]" value="[% operation.operationid | html %]" /></td>
<td>
<label for="operationid[% operation.operationid | html %]">[% operation.timestamp | html %]</label>
</td>
<td>
[% SWITCH ( operation.action ) -%]
[% CASE "issue" -%]
@ -89,19 +94,16 @@
</div>
[% MACRO jsinclude BLOCK %]
[% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
<script type="text/javascript">
<script>
$(document).ready(function() {
$("span.clearall").html("<a id=\"CheckNone\" href=\"/cgi-bin/koha/offline_circ/list.pl\">"+_("Uncheck all")+"<\/a>");
$("span.checkall").html("<a id=\"CheckAll\" href=\"/cgi-bin/koha/offline_circ/list.pl\">"+_("Check all")+"<\/a>");
$('#CheckNone').click(function() {
$("#operations").unCheckCheckboxes();
return false;
$('#CheckNone').click(function(e) {
e.preventDefault();
$("#operations input:checkbox").prop("checked", false );
});
$('#CheckAll').click(function() {
$("#operations").checkCheckboxes();
return false;
$('#CheckAll').click(function(e) {
e.preventDefault();
$("#operations input:checkbox").prop("checked", true );
});
$('#process,#delete').click(function() {
var action = $(this).attr("id");

Loading…
Cancel
Save