Koha/koha-tmpl/intranet-tmpl/prog/en/modules/labels/result.tt
Owen Leonard 4b82ed3549 Bug 21751: Replace fixFloat with HC-sticky to fix Chrome display
This patch replaces the fixFloat jQuery plugin with a new one: HC-sticky
(https://github.com/somewebmedia/hc-sticky). This plugin provides the
same functionality without the page-reflow problems fixFloat suffers
from.

To test, apply the patch and regenerate the staff client CSS. Test the
behavior of the floating toolbar on these pages:

 - Acquisitions -> Vendor -> Vendor details
 - Acquisitions -> Vendor -> View basket
   - On both these pages, test toolbar behavior before and after
     expanding the "Orders search" options at the top of the page.
 - Administration -> System preferences
 - Authorities -> Create or edit an authority
 - Catalog -> Advanced search
   - Search results
 - Catalog -> Item search
 - Cataloging -> Add or edit a record
   - Open the plugin window for the 008 field
 - Tools -> Label creator -> New label batch -> Add items -> Search ->
   Results
 - Patrons -> New patron
   - Test before and after expanding the patron search options at the
     top of the page
   - Test editing a patron too
 - Tools -> Automatic item modifications by age -> Edit
 - Tools -> Notices & slips -> Edit
 - Lists -> View list

Check that the About page has been updated with information about the
plugin.

Signed-off-by: David Cook <dcook@prosentient.com.au>

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

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

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-02-04 14:13:35 +00:00

155 lines
7.9 KiB
Text

[% USE raw %]
[% BLOCK pagination %]
<nav>
[% IF ( displayprev || displaynext ) %]
<ul class="pagination">
[% IF ( displayprev ) %]
<li><a class="nav" href="label-item-search.pl?startfrom=[% startfromprev | html %]&amp;ccl_query=[% ccl_query | html %]&amp;resultsperpage=[% resultsperpage | html %]&amp;op=do_search&amp;batch_id=[% batch_id | html %]"><i class="fa fa-arrow-left"></i> Previous</a></li>
[% END %]
[% FOREACH number IN numbers %]
[% IF ( startfrom == number.startfrom ) %]
<li class="active"><span>[% number.number | html %]</span></a></li>
[% ELSE %]
<li><a class="nav" href="label-item-search.pl?startfrom=[% number.startfrom | html %]&amp;ccl_query=[% ccl_query | html %]&amp;resultsperpage=[% resultsperpage | html %]&amp;op=do_search&amp;batch_id=[% batch_id | html %]">[% number.number | html %]</a></li>
[% END %]
[% END %]
[% IF ( displaynext ) %]
<li><a class="nav" href="label-item-search.pl?startfrom=[% startfromnext | html %]&amp;ccl_query=[% ccl_query | html %]&amp;resultsperpage=[% resultsperpage | html %]&amp;op=do_search&amp;batch_id=[% batch_id | html %]">Next <i class="fa fa-arrow-right"></i></a></li>
[% END %]
</ul>
[% END %]
</nav>
[% END %]
[% USE Asset %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha &rsaquo; Barcodes and labels &rsaquo; Search results</title>
[% INCLUDE 'doc-head-close.inc' %]
</head>
<body id="labels_result" class="tools labels">
<div class="main container-fluid">
<h1>Search results</h1>
<div class="results">
[% PROCESS pagination %]
[% IF ( results ) %]
<strong>Results [% from | html %] through [% to | html %] [% IF ( total ) %] of [% total | html %][% END %]</strong>
[% ELSE %]
No results found
[% END %]
<form name="resultform" action="" style="display:block">
<div id="toolbar" class="btn-toolbar">
<div class="btn-group"><button type="button" class="btn btn-default btn-sm" id="add_items"><i class="fa fa-plus"></i> Add checked</button></div>
<div class="btn-group"><a href="#" class="btn btn-default btn-sm close"><i class="fa fa-times-circle"></i> Done</a></div>
</div>
<div><a id="CheckAll" href="#"><i class="fa fa-check"></i> Select all</a> <a id="CheckNone" href="#"><i class="fa fa-remove"></i> Clear all</a></div>
<div id="label-search-results">
<input type="hidden" name="ccl_query" value="[% ccl_query | html %]" />
[% FOREACH result_se IN result_set %]
<div style="border-bottom:1px solid #CCC;padding:1em 0;">
<h4>[% result_se.title | html %]</h4>
<p>[% IF ( result_se.author ) %]by [% result_se.author | html %][% END %]
[[% result_se.itemtype | html %]], [% IF ( result_se.publishercode ) %][% result_se.publishercode | html %] [% END %][% IF ( result_se.place ) %][% result_se.place | html %] [% END %][% IF ( result_se.copyrightdate ) %][% result_se.copyrightdate | html %], [% END %][% IF ( result_se.pages ) %][% result_se.pages | html %][% END %][% IF ( result_se.isbn ) %], <b>ISBN: </b>[% result_se.isbn | html %][% END %][% IF ( result_se.notes ) %],<br />[% result_se.notes | html %][% END %]</p>
<table>
[% FOREACH item_tabl IN result_se.item_table %]
[% IF ( item_tabl.header_fields ) %]
<thead>
<tr>
[% FOREACH header_field IN item_tabl.header_fields %]
[% SWITCH header_field.field_label -%]
[% CASE "Add Item" -%]
<th>Add item</th>
[% CASE "Call Number" -%]
<th>Call number</th>
[% CASE "Accession Date" %]
<th>Accession date</th>
[% CASE "Barcode" %]
<th>Barcode</th>
[% CASE "Select" -%]
<th>Select</th>
[% CASE %]
<th>[% header_field.field_label | html %]</th>
[% END -%]
[% END %]
</tr>
</thead>
[% ELSE %]
<tr>
[% FOREACH text_field IN item_tabl.text_fields %]
[% IF ( text_field.select_field ) %]
<td><input type="checkbox" name="action" value="[% text_field.field_value | html %]"></td>
[% ELSIF ( text_field.link_field ) %]
<td>
<a class="btn btn-default btn-xs select_item" data-item-number="[% text_field.field_value | html %]" data-batch-id="[% batch_id | html %]" data-field-type="[% text_field.type | html %]"><i class="fa fa-plus"></i> Add</a>
</td>
[% ELSE %]
<td>[% text_field.field_value | html %]</td>
[% END %]
[% END %]
</tr>
[% END %]
[% END %]
</table>
</div>
[% END %]
</div>
</form>
</div>
[% PROCESS pagination %]
<div id="closewindow"><a href="#" class="btn btn-default btn-default close">Close</a></div>
</div>
[% MACRO jsinclude BLOCK %]
[% Asset.js("lib/hc-sticky.js") | $raw %]
<script>
var Sticky;
$(document).ready(function(){
Sticky = $("#toolbar");
Sticky.hcSticky({
stickTo: "form",
stickyClass: "floating"
});
$("#CheckAll").click(function(e){
e.preventDefault();
$("input[type='checkbox']").prop("checked",true);
});
$("#CheckNone").click(function(e){
e.preventDefault();
$("input[type='checkbox']").prop("checked",false);
});
$("#add_items").on("click",function(){
add_item('checked',[% batch_id | html %],'[% type | html %]');
});
$(".select_item").on("click",function(e){
e.preventDefault();
var batch_id = $(this).data("batch-id");
var itemnumber = $(this).data("item-number");
var type = $(this).data("field-type");
add_item(itemnumber, batch_id, type);
});
});
function add_item(item_number,batch_id,type_id){
var p = window.opener;
if (item_number == 'checked') {
items= new Array;
if(document.resultform.action.length > 0) {
for (var i=0; i < document.resultform.action.length; i++) {
if (document.resultform.action[i].checked) {
p.add_item(document.resultform.action[i].value);
}
}
} else {
p.add_item(document.resultform.action.value);
}
}
else {
p.add_item(item_number);
}
}
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' popup_window=1 %]