From 231dfeb37e43d9ecba9b4ea86a0380dbe7cc3535 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 11 Feb 2021 11:21:43 +0100 Subject: [PATCH] Bug 27676: Correct finesMode ne off condition finesMode is 'off' by default (sysprefs.sql), but if you modify its value from the UI and set it to 'production' then back to 'off', the DB value becomes an empty string '', because of $YAML::Syck::ImplicitTyping This has been found when working on on removing YAML::Syck (bug 22824), so it's not perfect but the situation will be cleared in the follow-up bug report. Test plan: 0. Don't apply the patch 1. reset_all => finesMode eq 'off' in DB 2. Set the pref's value to production 3. Switch it back to 'off' 4. Value is '' in DB 5. Check an item in that should generate overdue charges => Charges are not generated 6. Apply the patch 7. Check an item in that should generate overdue charges => Charges are generated Signed-off-by: Martin Renvoize Signed-off-by: Jonathan Druart (cherry picked from commit f831130525c62f799c831dd7eb1b36065b60c172) Signed-off-by: Fridolin Somers (cherry picked from commit d22780d917fa48ffe39aa08a736a3124df9023d2) Signed-off-by: Andrew Fuerste-Henry (cherry picked from commit f463569b31fc0338beee198fc7adbbc814dcfc83) Signed-off-by: Victor Grousset/tuxayo --- circ/returns.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circ/returns.pl b/circ/returns.pl index 85ae0a7b05..33ec6a96ea 100755 --- a/circ/returns.pl +++ b/circ/returns.pl @@ -91,7 +91,7 @@ my $userenv_branch = $userenv->{'branch'} // ''; my $printer = $userenv->{'branchprinter'} // ''; my $forgivemanualholdsexpire = $query->param('forgivemanualholdsexpire'); -my $overduecharges = (C4::Context->preference('finesMode') && C4::Context->preference('finesMode') ne 'off'); +my $overduecharges = (C4::Context->preference('finesMode') && C4::Context->preference('finesMode') eq 'production'); # # Some code to handle the error if there is no branch or printer setting..... # -- 2.39.5