@@ -, +, @@ fetching biblio --- C4/Reserves.pm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) --- a/C4/Reserves.pm +++ a/C4/Reserves.pm @@ -24,6 +24,7 @@ package C4::Reserves; use Modern::Perl; use C4::Accounts; +use C4::Biblio qw( GetMarcFromKohaField ); use C4::Circulation qw( CheckIfIssuedToPatron GetAgeRestriction GetBranchItemRule ); use C4::Context; use C4::Items qw( CartToShelf get_hostitemnumbers_of ); @@ -382,7 +383,6 @@ sub CanItemBeReserved { # we retrieve borrowers and items informations # # item->{itype} will come for biblioitems if necessery my $item = Koha::Items->find($itemnumber); - my $biblio = $item->biblio; my $patron = Koha::Patrons->find( $borrowernumber ); my $borrower = $patron->unblessed; @@ -391,10 +391,13 @@ sub CanItemBeReserved { if ( $item->damaged && !C4::Context->preference('AllowHoldsOnDamagedItems') ); - # Check for the age restriction - my ( $ageRestriction, $daysToAgeRestriction ) = - C4::Circulation::GetAgeRestriction( $biblio->biblioitem->agerestriction, $borrower ); - return { status => 'ageRestricted' } if $daysToAgeRestriction && $daysToAgeRestriction > 0; + if( GetMarcFromKohaField('biblioitems.agerestriction') ){ + my $biblio = $item->biblio; + # Check for the age restriction + my ( $ageRestriction, $daysToAgeRestriction ) = + C4::Circulation::GetAgeRestriction( $biblio->biblioitem->agerestriction, $borrower ); + return { status => 'ageRestricted' } if $daysToAgeRestriction && $daysToAgeRestriction > 0; + } # Check that the patron doesn't have an item level hold on this item already return { status =>'itemAlreadyOnHold' } @@ -402,7 +405,7 @@ sub CanItemBeReserved { # Check that patron have not checked out this biblio (if AllowHoldsOnPatronsPossessions set) if ( !C4::Context->preference('AllowHoldsOnPatronsPossessions') - && C4::Circulation::CheckIfIssuedToPatron( $patron->borrowernumber, $biblio->biblionumber ) ) { + && C4::Circulation::CheckIfIssuedToPatron( $patron->borrowernumber, $item->biblionumber ) ) { return { status =>'alreadypossession' }; } --