Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

66 lines
2.0 KiB

  1. package Koha::Template::Plugin::CirculationRules;
  2. # Copyright ByWater Solutions 2017
  3. # This file is part of Koha.
  4. #
  5. # Koha is free software; you can redistribute it and/or modify it
  6. # under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 3 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # Koha is distributed in the hope that it will be useful, but
  11. # WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with Koha; if not, see <http://www.gnu.org/licenses>.
  17. use Modern::Perl;
  18. use base qw( Template::Plugin );
  19. use Koha::CirculationRules;
  20. sub Get {
  21. my ( $self, $branchcode, $categorycode, $itemtype, $rule_name ) = @_;
  22. $branchcode = undef if $branchcode eq q{} or $branchcode eq q{*};
  23. $categorycode = undef if $categorycode eq q{} or $categorycode eq q{*};
  24. $itemtype = undef if $itemtype eq q{} or $itemtype eq q{*};
  25. my $rule = Koha::CirculationRules->get_effective_rule(
  26. {
  27. branchcode => $branchcode,
  28. categorycode => $categorycode,
  29. itemtype => $itemtype,
  30. rule_name => $rule_name,
  31. }
  32. );
  33. return $rule->rule_value if $rule;
  34. }
  35. sub Search {
  36. my ( $self, $branchcode, $categorycode, $itemtype, $rule_name ) = @_;
  37. $branchcode = undef if $branchcode eq q{} or $branchcode eq q{*};
  38. $categorycode = undef if $categorycode eq q{} or $categorycode eq q{*};
  39. $itemtype = undef if $itemtype eq q{} or $itemtype eq q{*};
  40. my $rule = Koha::CirculationRules->search(
  41. {
  42. branchcode => $branchcode,
  43. categorycode => $categorycode,
  44. itemtype => $itemtype,
  45. rule_name => $rule_name,
  46. }
  47. )->next;
  48. return $rule->rule_value if $rule;
  49. }
  50. 1;