From 415f16001a822e8de0d6cdd62bf52b8e41c20973 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Wed, 18 Jul 2018 17:35:46 +0000 Subject: [PATCH] Bug 18887: (follow-up) Fix null/empty behavior --- C4/Reserves.pm | 2 +- admin/smart-rules.pl | 2 +- installer/data/mysql/atomicupdate/bug_18887.perl | 4 ++-- koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/C4/Reserves.pm b/C4/Reserves.pm index e78596928e..10613f0ab2 100644 --- a/C4/Reserves.pm +++ b/C4/Reserves.pm @@ -427,7 +427,7 @@ sub CanItemBeReserved { rule_name => 'max_holds', } ); - if ( $rule ) { + if ( $rule && defined( $rule->rule_value ) && $rule->rule_value ne '' ) { my $total_holds_count = Koha::Holds->search( { borrowernumber => $borrower->{borrowernumber} diff --git a/admin/smart-rules.pl b/admin/smart-rules.pl index 9f739c8cd0..24d4b39ee4 100755 --- a/admin/smart-rules.pl +++ b/admin/smart-rules.pl @@ -228,7 +228,7 @@ elsif ($op eq "set-branch-defaults") { $holdallowed =~ s/\s//g; $holdallowed = undef if $holdallowed !~ /^\d+/; $max_holds =~ s/\s//g; - $max_holds = undef if $max_holds !~ /^\d+/; + $max_holds = '' if $max_holds !~ /^\d+/; if ($branch eq "*") { my $sth_search = $dbh->prepare("SELECT count(*) AS total diff --git a/installer/data/mysql/atomicupdate/bug_18887.perl b/installer/data/mysql/atomicupdate/bug_18887.perl index 38610c9d44..07ee2d357f 100644 --- a/installer/data/mysql/atomicupdate/bug_18887.perl +++ b/installer/data/mysql/atomicupdate/bug_18887.perl @@ -20,12 +20,12 @@ if( CheckVersion( $DBversion ) ) { $dbh->do(q{ INSERT INTO circulation_rules ( branchcode, categorycode, itemtype, rule_name, rule_value ) - SELECT branchcode, categorycode, NULL, 'max_holds', max_holds FROM branch_borrower_circ_rules + SELECT branchcode, categorycode, NULL, 'max_holds', COALESCE( max_holds, '' ) FROM branch_borrower_circ_rules }); $dbh->do(q{ INSERT INTO circulation_rules ( branchcode, categorycode, itemtype, rule_name, rule_value ) - SELECT NULL, categorycode, NULL, 'max_holds', max_holds FROM branch_borrower_circ_rules + SELECT NULL, categorycode, NULL, 'max_holds', COALESCE( max_holds, '' ) FROM default_borrower_circ_rules }); $dbh->do(q{ 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 eb9148f82f..54d34b0889 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 @@ -520,7 +520,7 @@ [% SET rule_value = CirculationRules.Get( branch_cat_rule_loo.branchcode, branch_cat_rule_loo.categorycode, branch_cat_rule_loo.itemtype, 'max_holds' ) %] - [% IF rule_value %] + [% IF rule_value.defined && rule_value != '' %] [% rule_value %] [% ELSE %] Unlimited -- 2.11.0