View | Details | Raw Unified | Return to bug 23116
Collapse All | Expand All

(-)a/reserve/placerequest.pl (-1 / +8 lines)
Lines 88-103 if ( $type eq 'str8' && $borrower ) { Link Here
88
            }
88
            }
89
        }
89
        }
90
90
91
        my $can_override = C4::Context->preference('AllowHoldPolicyOverride');
91
        if ( defined $checkitem && $checkitem ne '' ) {
92
        if ( defined $checkitem && $checkitem ne '' ) {
93
92
            my $item = Koha::Items->find($checkitem);
94
            my $item = Koha::Items->find($checkitem);
95
93
            if ( $item->biblionumber ne $biblionumber ) {
96
            if ( $item->biblionumber ne $biblionumber ) {
94
                $biblionumber = $item->biblionumber;
97
                $biblionumber = $item->biblionumber;
95
            }
98
            }
96
            if ( CanItemBeReserved($borrower->{'borrowernumber'}, $item->itemnumber, $branch)->{status} eq 'OK' ) {
99
100
            my $can_item_be_reserved = canItemBeReserved($borrower->{'borrowernumber'}, $item->itemnumber, $branch)->{status};
101
102
            if ( $can_item_be_reserved ne 'itemAlreadyOnHold' ) {
97
                AddReserve( $branch, $borrower->{'borrowernumber'},
103
                AddReserve( $branch, $borrower->{'borrowernumber'},
98
                    $biblionumber, \@realbi, $rank[0], $startdate, $expirationdate, $notes, $title,
104
                    $biblionumber, \@realbi, $rank[0], $startdate, $expirationdate, $notes, $title,
99
                    $checkitem, $found, $itemtype );
105
                    $checkitem, $found, $itemtype );
100
            }
106
            }
107
101
        } elsif ($multi_hold) {
108
        } elsif ($multi_hold) {
102
            my $bibinfo = $bibinfos{$biblionumber};
109
            my $bibinfo = $bibinfos{$biblionumber};
103
            if ( CanBookBeReserved($borrower->{'borrowernumber'}, $biblionumber)->{status} eq 'OK' ) {
110
            if ( CanBookBeReserved($borrower->{'borrowernumber'}, $biblionumber)->{status} eq 'OK' ) {
(-)a/reserve/request.pl (-3 / +5 lines)
Lines 508-515 foreach my $biblionumber (@biblionumbers) { Link Here
508
                }
508
                }
509
                elsif ( C4::Context->preference('AllowHoldPolicyOverride') ) {
509
                elsif ( C4::Context->preference('AllowHoldPolicyOverride') ) {
510
                    # If AllowHoldPolicyOverride is set, it should override EVERY restriction, not just branch item rules
510
                    # If AllowHoldPolicyOverride is set, it should override EVERY restriction, not just branch item rules
511
                    $item->{override} = 1;
511
                    # with the exception of itemAlreadyOnHold because, you know, the item is already on hold
512
                    $num_override++;
512
                    if ( $can_item_be_reserved ne 'itemAlreadyOnHold' ) {
513
                        $item->{override} = 1;
514
                        $num_override++;
515
                    }
513
516
514
                    push( @available_itemtypes, $item->{itype} );
517
                    push( @available_itemtypes, $item->{itype} );
515
                }
518
                }
516
- 

Return to bug 23116