From e4b008e8b5e2fa8a708f318d5c994d1e4f136b67 Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Fri, 3 Jun 2016 11:26:11 -0300 Subject: [PATCH] Bug 14048: Add a refund rules setting form in smart-rules This patch introduces the CRUD UI for managing the refund lost item fee rules on the general 'Circulation and fines rules' page. Verify that rules can be added and changed (by adding a new one for the same branch). The default rule is locked so it cannot be deleted. Sponsored-by: DoverNet Sponsored-by: South-East Kansas Library System Sponsored-by: SWITCH Library Consortium --- admin/smart-rules.pl | 25 ++++++++++ .../prog/en/modules/admin/smart-rules.tt | 58 ++++++++++++++++++++++ 2 files changed, 83 insertions(+) diff --git a/admin/smart-rules.pl b/admin/smart-rules.pl index 11a5637..ac6efef 100755 --- a/admin/smart-rules.pl +++ b/admin/smart-rules.pl @@ -30,6 +30,9 @@ use Koha::DateUtils; use Koha::Database; use Koha::IssuingRule; use Koha::IssuingRules; +use Koha::Logger; +use Koha::RefundLostItemFeeRule; +use Koha::RefundLostItemFeeRules; use Koha::Libraries; my $input = CGI->new; @@ -423,6 +426,28 @@ elsif ($op eq "add-branch-item") { } } } +elsif ( $op eq 'add-refund-lost-item-fee-rule' ) { + my $ref_branchcode = $input->param('ref_branchcode'); + my $ref_refund = $input->param('ref_refund'); + # We retrieve the object to update it, or create a new one + my $refundLostItemFeeRule = Koha::RefundLostItemFeeRules->find({ + branchcode => $ref_branchcode + }) // Koha::RefundLostItemFeeRule->new; + $refundLostItemFeeRule->set({ + branchcode => $ref_branchcode, + refund => $ref_refund + })->store(); +} +elsif ( $op eq 'del-refund-lost-item-fee-rule' ) { + my $ref_branchcode = $input->param('ref_branchcode'); + eval { + Koha::RefundLostItemFeeRules->find({ + branchcode => $ref_branchcode + })->delete; + }; +} + +$template->param( refundLostItemFeeRules => scalar Koha::RefundLostItemFeeRules->search ) ; my $branches = GetBranches(); my @branchloop; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt index fea01f3..4a156cd 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt @@ -2,6 +2,7 @@ Koha › Administration › Circulation and fine rules [% INCLUDE 'doc-head-close.inc' %] [% INCLUDE 'calendar.inc' %] +[% USE Branches %]