Hide OPAC-invisible holdings from SRU/Z39.50
authorDan Scott <dscott@laurentian.ca>
Mon, 16 Jul 2012 17:27:54 +0000 (13:27 -0400)
committerDan Scott <dscott@laurentian.ca>
Thu, 16 Aug 2012 17:39:14 +0000 (13:39 -0400)
commitf5e7651ab211d4e3025202569145b2633181207c
treefb1c30b9ff5f04f5e51502bf61d014f3f41fadc3
parent5a5da77ecfe9d2e5920ea08dca59ad070f7ea40f
Hide OPAC-invisible holdings from SRU/Z39.50

The basic_holdings Supercat method filtered out deleted call numbers and
copies, but didn't filter out copies based on the OPAC visibility status
of copy location / status / the copy itself. This has undesired results
when third-party services request copies via SRU or Z39.50 and expose
copies that should not be visible to the public.

We wrap all of the visibility and deletedness checks for a given copy up
into a subroutine so that we can avoid repeating ourselves in the
basic_holdings logic. Also, if we missed a test, we can add it in one
handy place :)

(Thanks to Galen Charlton for finding two missing tests: circ lib
visibility and owning lib visibility!)

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Art Rhyno <art632000@yahoo.ca>
Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm