From 019f80a810c8d2e81e5602936b02d73b67a15d27 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Mon, 17 Feb 2014 09:24:40 -0500 Subject: [PATCH] LP#1053397 filter MR icons/formats repair Only limit the scope of the MR attributes in the presence of a hard hold boundary when searching for which attributes to display in the hold placement form. In other words, don't limit the attributes based on search parameters, since searching at Branch 1 does not necesssarily meany you only want to place holds on formats available at branch 1. Signed-off-by: Bill Erickson Signed-off-by: Mike Rylander Signed-off-by: Dan Wells --- .../perlmods/lib/OpenILS/Application/Circ/Holds.pm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm index 3eaec7a03f..ac3ade207f 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm @@ -4246,10 +4246,15 @@ sub mr_hold_filter_attrs { my ($self, $client, $mr_id, $org_id, $hold_ids) = @_; my $e = new_editor(); - # providing a context org means we filter out records that - # cannot possibly be held. - my $org_depth = $U->ou_ancestor_setting_value( - $org_id, OILS_SETTING_HOLD_HARD_BOUNDARY) if $org_id; + # by default, return MR / hold attributes for all constituent + # records with holdable copies. If there is a hard boundary, + # though, limit to records with copies within the boundary, + # since anything outside the boundary can never be held. + my $org_depth = 0; + if ($org_id) { + $org_depth = $U->ou_ancestor_setting_value( + $org_id, OILS_SETTING_HOLD_HARD_BOUNDARY) || 0; + } # get all org-scoped records w/ holdable copies for this metarecord my ($bre_ids) = $self->method_lookup( -- 2.43.2