Bug 25471: Add DataTables to MARC subfield structure admin page

This patch adds DataTables sorting and filtering to the table of
subfields shown on the MARC subfield structure administration page.

To test, apply the patch and go to Administration -> MARC bibliographic
framework.

 - From the 'Actions' menu, select 'MARC structure.'
 - From the 'Actions' menu, select the 'View subfields' link for a tag
   with multiple subfields.
 - On the page showing all the subfields for the tag, confirm that the
   table is sorted by default by subfield and that sorting works
   correctly.
 - Confirm that the search form at the top of the table works.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 7ff774509d)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
Owen Leonard 2020-05-12 21:27:05 +00:00 committed by Lucas Gass
parent 8d1494ba5c
commit e68d2e9079
2 changed files with 14 additions and 3 deletions

View File

@ -266,13 +266,16 @@
<p>This screen shows the subfields associated with the selected tag. You can edit subfields or add a new one by clicking on edit.</p>
<p>The column 'Koha field' shows that the subfield is linked with a Koha field.</p>
<table>
<table id="table_marcsubfieldstructure">
<thead>
<tr>
<th>Subfield</th>
<th>Text</th>
<th>Constraints</th>
<th>Actions</th>
<th class="NoSort">Actions</th>
</tr>
</thead>
<tbody>
[% FOREACH loo IN loop %]
<tr>
<td><a href="/cgi-bin/koha/admin/marc_subfields_structure.pl?op=add_form&amp;tagfield=[% loo.tagfield | uri %]&amp;frameworkcode=[% frameworkcode | uri %]#sub[% loo.tagsubfield | uri %]field">[% loo.tagsubfield | html %]</a></td>
@ -307,6 +310,7 @@
</td>
</tr>
[% END %]
</tbody>
</table>
<form action="[% script_name | html %]" method="get">
@ -331,6 +335,7 @@
</div> <!-- /.row -->
[% MACRO jsinclude BLOCK %]
[% INCLUDE 'datatables.inc' %]
[% Asset.js("js/admin-menu.js") | $raw %]
[% Asset.js("js/marc_subfields_structure.js") | $raw %]
[% END %]

View File

@ -1,10 +1,16 @@
/* global dataTablesDefaults */
$(document).ready(function() {
$('#subfieldtabs').tabs();
$("input[id^='hidden_']").click(setHiddenValue);
$("input[id^='hidden-']").each(function() {
populateHiddenCheckboxes($(this).attr('id').split('-')[1]);
});
$("#table_marcsubfieldstructure").dataTable($.extend(true, {}, dataTablesDefaults, {
"columnDefs": [
{ 'sortable': false, 'targets': [ 'NoSort' ] }
],
paginate: false
}));
});
/* Function to enable/disable hidden values checkboxes when Flag is (de)selected */