@@ -, +, @@ --- Koha/Biblio.pm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) --- a/Koha/Biblio.pm +++ a/Koha/Biblio.pm @@ -41,6 +41,7 @@ use Koha::Item::Transfer::Limits; use Koha::Items; use Koha::Libraries; use Koha::Subscriptions; +use Koha::Util::SystemPreferences; =head1 NAME @@ -351,6 +352,29 @@ sub items { return Koha::Items->_new_from_dbic( $items_rs ); } +=head3 get_visible_items + +my $items = $biblio->get_visible_items(); + +Returns the related Koha::Items object for this biblio +excluding hidden items + +=cut + +sub get_visible_items { + my ($self) = @_; + + my $rules = get_yaml_pref_hash('OpacHiddenItems'); + my $search_params; + foreach my $field (keys %$rules){ + $search_params->{$field}->{'not in'} = $rules->{$field}; + } + my $items_rs = $self->_result->items; + $items_rs = $items_rs->search( $search_params ) if $items_rs; + + return Koha::Items->_new_from_dbic( $items_rs ); +} + =head3 itemtype my $itemtype = $biblio->itemtype(); --