The issuingrules table and smart-rules.pl interface currently mix definition of circulation policy with definition of when those policies should be applied. This proposal suggests two distinct interfaces for these operations.
The issuingrules table currently holds performs two discrete functions:
This RFC proposes that these two data sets be represented in two new tables in the Koha database, circ_rules and circ_policies, which would supercede the issuingrules table (i.e. issuingrules will be dropped).
Benefits:
Drawbacks:
This drawback is addressed by including in smart_rules.pl a 'policy lookup' allowing the user to look up any available circ policies, as well as an on-hover display of a policy in the rules display. (see screenshot).
The patch set will include an updatedatabase patch that will extract repeated policies from the issuingrules table, name them in English with an appropriate description, and assign those policies to the circ_rules table.
Note the table on the right shows policy details for the selected option in the 'Policy lookup' pulldown at the top of the page. Similar table appears on hover for the defined policies. [Term loan policy is covered in a separate RFC, and allows calendar-based static due dates to be set for given circ transactions]