Bug 15565: Add 'DisplayMultiItemHolds' system preference to toggle display of multi item holds
These patches allow the display of checkboxes instead of radio buttons for placing specific item holds in the OPAC and staff interface. This display is controlled by the system preference 'DisplayMultiItemHolds'. When disabled, the hold display is the same as in the past. When enabled, the user can select multiple items to place holds on at the same time. If there is an error placing one or more holds, an error will display on the following screen. Test plan: 0. Apply the patches and koha-plack --reload kohadev 1. Enable 'DisplayMultiItemHolds' syspref 2. In staff interface, go to a record with multiple holdable items 3. Check the boxes next to 2+ items and click the button to place the holds 4. Note that the holds are all placed (unless there is a failure) 5. Cancel the holds, and try again (but this time make Holds per record (count) only 1 in the circ rules) 6. Note that one of the holds is placed, but the others are not and an error message is displayed saying that one or more holds could not be placed because the holds per record was exceeded 7. Perform the same above procedure on the OPAC 8. If DisplayMultiPlaceHold is enabled, you can test placing multiple specific item holds across multiple bibs in the OPAC via the search results 9. If EnableItemGroups and EnableItemGroupHolds is enabled, you can test that you can either place item group holds or specific item holds. Toggling the checkboxes in the staff interface will uncheck the item group hold radio button. Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
parent
019709fc81
commit
1776a52ee6
|
|
@ -213,6 +213,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `
|
|||
('displayFacetCount','0',NULL,NULL,'YesNo'),
|
||||
('DisplayIconsXSLT','1','','If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages.','YesNo'),
|
||||
('DisplayLibraryFacets', 'holding', 'home|holding|both', 'Defines which library facets to display.', 'Choice'),
|
||||
('DisplayMultiItemHolds','0','','Display the ability to place holds on different items at the same time in staff interface and OPAC','YesNo'),
|
||||
('DisplayMultiPlaceHold','1','','Display the ability to place multiple holds or not','YesNo'),
|
||||
('DisplayOPACiconsXSLT','1','','If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages in the OPAC.','YesNo'),
|
||||
('DumpSearchQueryTemplate',0,'','Add the search query being passed to the search engine into the template for debugging','YesNo'),
|
||||
|
|
|
|||
|
|
@ -885,6 +885,12 @@ Circulation:
|
|||
1: Enable
|
||||
0: "Don't enable"
|
||||
- "the ability to place holds on multiple bibliographic records from the search results"
|
||||
-
|
||||
- pref: DisplayMultiItemHolds
|
||||
choices:
|
||||
1: Enable
|
||||
0: "Don't enable"
|
||||
- "the ability to place holds on different items at the same time in staff interface and OPAC."
|
||||
-
|
||||
- pref: TransferWhenCancelAllWaitingHolds
|
||||
choices:
|
||||
|
|
|
|||
|
|
@ -11,6 +11,10 @@
|
|||
[% USE AuthorisedValues %]
|
||||
[% USE Price %]
|
||||
[% USE TablesSettings %]
|
||||
[% SET reserve_input_type = 'radio' %]
|
||||
[% IF ( Koha.Preference('DisplayMultiItemHolds') ) %]
|
||||
[% SET reserve_input_type = 'checkbox' %]
|
||||
[% END %]
|
||||
[% PROCESS 'i18n.inc' %]
|
||||
[% SET footerjs = 1 %]
|
||||
[% INCLUDE 'doc-head-open.inc' %]
|
||||
|
|
@ -804,9 +808,9 @@
|
|||
Hold must be item group level
|
||||
</span>
|
||||
[% ELSIF ( itemloo.available ) %]
|
||||
<input type="checkbox" name="checkitem" value="[% itemloo.itemnumber | html %]" />
|
||||
<input type="[% reserve_input_type | html %]" name="checkitem" value="[% itemloo.itemnumber | html %]" />
|
||||
[% ELSIF ( itemloo.override ) %]
|
||||
<input type="checkbox" name="checkitem" class="needsoverride" value="[% itemloo.itemnumber | html %]" />
|
||||
<input type="[% reserve_input_type | html %]" name="checkitem" class="needsoverride" value="[% itemloo.itemnumber | html %]" />
|
||||
<i class="fa fa-exclamation-triangle fa-lg" style="color:gold" title="Requires override of hold policy"/></i>
|
||||
[% ELSE %]
|
||||
<span class="error">
|
||||
|
|
|
|||
|
|
@ -5,6 +5,10 @@
|
|||
[% USE Price %]
|
||||
[% USE ItemTypes %]
|
||||
[% USE AuthorisedValues %]
|
||||
[% SET reserve_input_type = 'radio' %]
|
||||
[% IF ( Koha.Preference('DisplayMultiItemHolds') ) %]
|
||||
[% SET reserve_input_type = 'checkbox' %]
|
||||
[% END %]
|
||||
[% INCLUDE 'doc-head-open.inc' %]
|
||||
<title>Placing a hold › [% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog</title>
|
||||
[% INCLUDE 'doc-head-close.inc' %]
|
||||
|
|
@ -397,7 +401,7 @@
|
|||
<tr class="holdable">
|
||||
[% END %]
|
||||
<td class="copynumber" data-order="[% itemLoo.copynumber | html %]">
|
||||
<input type="checkbox" class="checkitem checkitem_[% bibitemloo.biblionumber | html %]" name="checkitem_[% bibitemloo.biblionumber | html %]" value="[% itemLoo.itemnumber | html %]" />
|
||||
<input type="[% reserve_input_type | html %]" class="checkitem checkitem_[% bibitemloo.biblionumber | html %]" name="checkitem_[% bibitemloo.biblionumber | html %]" value="[% itemLoo.itemnumber | html %]" />
|
||||
[% ELSE %]
|
||||
[% SET unholdable_items = 1 %]
|
||||
[% IF ( itemLoo.checkout ) %]
|
||||
|
|
|
|||
Loading…
Reference in New Issue