These policies can be set to blank, this affects the holds queue and presumably other areas. There needs to be a visual indication of the rule not being set vs the rule being set to blank - or the rule should not save when dropdown is set to 'Not set' To recreate: 1 - Go to Admin->Circulation rules and pick a branch with no rules set 2 - Under "Default checkout, hold and return policy" leave all fields blank and hit save 3 - Check the DB, five rules have been set: SELECT * FROM circulation_rules WHERE branchcode="BRANCH"; 4 - In the staff client, click 'Unset' 5 - There is a warning, but no visible change 6 - Check the DB, the rules are gone
IMO it should not modify the behaviour, that's where the issue is. For instance with patron_maxissueqty we are comparing with '' 539 if (defined($branch_borrower_circ_rule->{patron_maxissueqty}) and $branch_borrower_circ_rule->{patron_maxissueqty} ne '') {
I've got a suggestion for addressing this. What if we add checkboxes for "Unlimited" to Total Current Checkouts, Total Current On-site Checkouts, and Total Holds? - Replace the current value placeholder of "Unlimited" with "Not set" - If a user saves set of rules with no value in one of these fields, no rule is created for that field - If a user saves a set of rules with the Unlimited box checked for one of these fields, Koha creates a rule with rule_value='' This maintains current rule storage and enforcement, but makes the display and interface more clear.