From f7b10db10cb8dc2bec9cb68dac89ca4f1ea0a328 Mon Sep 17 00:00:00 2001 From: Agustin Moyano Date: Mon, 6 May 2019 23:11:09 -0300 Subject: [PATCH] Bug 18930: (follow-up) Amend Koha::RefundLostItemFeeRules->find --- Koha/RefundLostItemFeeRules.pm | 17 +++++++++++++++++ admin/smart-rules.pl | 5 +++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Koha/RefundLostItemFeeRules.pm b/Koha/RefundLostItemFeeRules.pm index b08ac1179d..56166e60b0 100644 --- a/Koha/RefundLostItemFeeRules.pm +++ b/Koha/RefundLostItemFeeRules.pm @@ -136,6 +136,23 @@ sub _choose_branch { return $branch; } +=head3 Koha::RefundLostItemFeeRules->find(); + +Inherit from Koha::Objects->find(), but forces rule_name => 'refund' +my $object = Koha::Objects->find( { col1 => $val1, col2 => $val2 } ); +my $object = Koha::Objects->find( $id ); +my $object = Koha::Objects->find( $idpart1, $idpart2, $attrs ); # composite PK + +=cut + +sub find { + my ( $self, @pars ) = @_; + + $pars[0]->{rule_name} = 'refund'; + + return $self->SUPER::find(@pars); +} + =head3 _default_rule (internal) This function returns the default rule defined for refunding lost diff --git a/admin/smart-rules.pl b/admin/smart-rules.pl index 1b03aed187..653f12cebb 100755 --- a/admin/smart-rules.pl +++ b/admin/smart-rules.pl @@ -526,7 +526,7 @@ elsif ( $op eq 'mod-refund-lost-item-fee-rule' ) { ); } } else { - Koha::CirculationRules->set_rules( + my $rule = Koha::CirculationRules->set_rules( { categorycode => undef, itemtype => undef, @@ -539,7 +539,8 @@ elsif ( $op eq 'mod-refund-lost-item-fee-rule' ) { } } -my $refundLostItemFeeRule = Koha::RefundLostItemFeeRules->find({ branchcode => $branch }); +my $refundLostItemFeeRule = Koha::RefundLostItemFeeRules->find({ branchcode => ($branch eq '*') ? undef:$branch }); + $template->param( refundLostItemFeeRule => $refundLostItemFeeRule, defaultRefundRule => Koha::RefundLostItemFeeRules->_default_rule -- 2.11.0