Bug 7614: Build a list of pickup locations in OPAC considering transfer limits

This patch enables the checks for transfer limits for given biblionumber in
OPAC when patron proceeds to place a hold. In case none of the items of that
biblio can be transferred to a library, that library will not be included in
the list of pickup locations.

To test:
1. Make sure you meet the following requirements:
   1.1: You are able to make holds in OPAC
   1.2: System preference UseBranchTransferLimits set to "Enforce"
   1.3: System preference BranchTransferLimitsType set to "item type"
        (for the sake of simplicity of this test plan, but you may also
         set it to "collection code" and deal with ccodes instead)
   1.4: System preference item-level_itypes set to "specific item"
   1.5: You have the default libraries and item types, otherwise replace
        the branchcodes and itemtypes in this test plan with your own
2. Make sure 'Fairfield' in cgi-bin/koha/admin/branches.pl has not disabled
   its ability to act as a "Pickup location"
3. Have a biblio with exactly one item of item-level itemtype 'BK'
4. Set item holdingbranch as 'CPL'
5. Go to cgi-bin/koha/admin/branch_transfer_limits.pl (keep this page open in
   a second tab for faster testing)
6. Select library 'Centerville'
7. Uncheck the checkbox 'FFL - Fairfield' and click Save
8. Go to OPAC and find your biblio, and start placing a hold on it
9. Click at the list of "Pick up location"s.
10. Observe that it is missing 'Fairfield'
11. Go back to cgi-bin/koha/admin/branch_transfer_limits.pl
12. Repeat step 6 and this time, check the checkbox 'FFL - Fairfield'
13. Refresh the page you arrived at step 8
14. Observe that it now includes 'Fairfield'

Signed-off-by: Bob Bennhoff <bbennhoff@clicweb.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
This commit is contained in:
Lari Taskula 2017-02-10 17:10:49 +02:00 committed by Nick Clemens
parent 02d3d4a8f5
commit 68803f3ddb

View file

@ -227,7 +227,7 @@
<label for="branch_[% bibitemloo.biblionumber | html %]">Pick up location:</label>
[% UNLESS ( bibitemloo.holdable ) %]
<select name="branch" id="branch_[% bibitemloo.biblionumber | html %]" disabled="disabled">
[% PROCESS options_for_libraries libraries => Branches.all({ search_params => { pickup_location => 1 }, selected => branch }) %]
[% PROCESS options_for_libraries libraries => Branches.pickup_locations( biblio => bibitemloo.biblionumber, selected => branch ) %]
</select>
[% ELSE %]
[% SET at_least_one_library_not_available_for_pickup = 0 %]