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

(-)a/Koha/Hold.pm (-8 / +4 lines)
Lines 604-611 sub cancel { Link Here
604
            C4::Reserves::_FixPriority({ biblionumber => $self->biblionumber });
604
            C4::Reserves::_FixPriority({ biblionumber => $self->biblionumber });
605
605
606
            # and, if desired, charge a cancel fee
606
            # and, if desired, charge a cancel fee
607
            my $charge;
607
            if ( $params->{'charge_cancel_fee'} ) {
608
            if (my $item = $self->item) {
608
                my $charge;
609
                my $item = $self->item;
609
                my $branchcode = C4::Reserves::GetReservesControlBranch($item->unblessed, $self->borrower->unblessed);
610
                my $branchcode = C4::Reserves::GetReservesControlBranch($item->unblessed, $self->borrower->unblessed);
610
611
611
                my $rule = Koha::CirculationRules->get_effective_rule(
612
                my $rule = Koha::CirculationRules->get_effective_rule(
Lines 618-628 sub cancel { Link Here
618
                );
619
                );
619
                my $rule_value = $rule && $rule->rule_value // '';
620
                my $rule_value = $rule && $rule->rule_value // '';
620
                $charge = $rule_value ne '' ? $rule_value : C4::Context->preference("ExpireReservesMaxPickUpDelayCharge");
621
                $charge = $rule_value ne '' ? $rule_value : C4::Context->preference("ExpireReservesMaxPickUpDelayCharge");
621
            } else {
622
                $charge = C4::Context->preference("ExpireReservesMaxPickUpDelayCharge");
623
            }
624
622
625
            if ( $charge && $params->{'charge_cancel_fee'} ) {
626
                my $account =
623
                my $account =
627
                  Koha::Account->new( { patron_id => $self->borrowernumber } );
624
                  Koha::Account->new( { patron_id => $self->borrowernumber } );
628
                $account->add_debit(
625
                $account->add_debit(
Lines 634-640 sub cancel { Link Here
634
                        type       => 'RESERVE_EXPIRED',
631
                        type       => 'RESERVE_EXPIRED',
635
                        item_id    => $self->itemnumber
632
                        item_id    => $self->itemnumber
636
                    }
633
                    }
637
                );
634
                ) if $charge;
638
            }
635
            }
639
636
640
            C4::Log::logaction( 'HOLDS', 'CANCEL', $self->reserve_id, $self )
637
            C4::Log::logaction( 'HOLDS', 'CANCEL', $self->reserve_id, $self )
641
- 

Return to bug 25711