From 28d46db66d5352d12a99c9ce6ec8be5201d8ce7c Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Wed, 24 Jun 2020 08:37:18 +0200 Subject: [PATCH] Bug 25851: (bug 18928 follow-up) Remove holdallowed rule is value is an empty string On the interface, if "Hold policy" is "Not set", the rule does not exist in the table. We should reflect that during the update DB process. Test plan: 1. Set "Hold policy" to "Not set" 2. Confirm that you can place holds 3. Confirm that the rule does not exist in the DB table 4. Set the value to an empty string (manually) 5. Confirm that you cannot longer place holds 6. Go to the circulation rules page and confirm that the value of "Hold policy" is "Not set" 7. Execute the update DB entry 8. Confirm that you can place holds 9. Confirm that the rule does not exist in the DB table Signed-off-by: Martin Renvoize --- installer/data/mysql/atomicupdate/bug_25851.perl | 7 +++++++ installer/data/mysql/updatedatabase.pl | 3 +++ 2 files changed, 10 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_25851.perl diff --git a/installer/data/mysql/atomicupdate/bug_25851.perl b/installer/data/mysql/atomicupdate/bug_25851.perl new file mode 100644 index 0000000000..a0aeec0814 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_25851.perl @@ -0,0 +1,7 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + $dbh->do(" + DELETE FROM circulation_rules WHERE rule_name='holdallowed' AND rule_value=''; + "); + NewVersion( $DBversion, 25851, "Remove holdallowed rule if value is an empty string"); +} diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index 8cff5534a1..2def59c4b2 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -20719,6 +20719,9 @@ if( CheckVersion( $DBversion ) ) { FROM issuingrules "); } + $dbh->do(" + DELETE FROM circulation_rules WHERE rule_name='holdallowed' AND rule_value=''; + "); $dbh->do("DROP TABLE issuingrules"); } -- 2.20.1