Bug 18887: Use get_effective_rule instead of search
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 24 Jul 2018 15:25:09 +0000 (12:25 -0300)
committerNick Clemens <nick@bywatersolutions.com>
Wed, 3 Oct 2018 17:58:15 +0000 (17:58 +0000)
Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Signed-off-by: Jesse Maseto <jesse@bywatersolution.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Koha/CirculationRules.pm
Koha/Template/Plugin/CirculationRules.pm

index 76dc63d..d594c1d 100644 (file)
@@ -50,6 +50,10 @@ sub get_effective_rule {
 
     croak q{No rule name passed in!} unless $rule_name;
 
+    for my $v ( $branchcode, $categorycode, $itemtype ) {
+        $v = undef if $v and $v eq '*';
+    }
+
     my $search_params;
     $search_params->{rule_name} = $rule_name;
 
index cc1e912..d6c79c8 100644 (file)
@@ -30,14 +30,14 @@ sub Get {
     $categorycode = undef if $categorycode eq q{};
     $itemtype     = undef if $itemtype eq q{};
 
-    my $rule = Koha::CirculationRules->search(
+    my $rule = Koha::CirculationRules->get_effective_rule(
         {
             branchcode   => $branchcode,
             categorycode => $categorycode,
             itemtype     => $itemtype,
             rule_name    => $rule_name,
         }
-    )->next();
+    );
 
     return $rule->rule_value if $rule;
 }