Hi all, I'm not sure I already mentioned this, but I proposed a new table on bug 26129 [1]. The table is quite similar to 'systempreferences'. The key difference is its companion classes are designed to allow per-branch, per-itemtype and per-category options.

This is basically a generalization of the 'circulation_rules' table, and also the 'systempreferences' one.

I originally envisioned it so I could set SMTP servers to libraries without a library_to_smtp table. I abandoned the idea because it was too much for what I was doing, but now I found:

https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22457
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=10589

which basically require this table and methods to calculate the effective (boolean) based on library and patron category. And I wouldn't like to see that implemented by reinventing the wheel.

The 'configurations' table IS reinventing the wheel, but in a way that can be reused and with a reasonable programming API (i.e. you don't need to create new tables for your per-<something> rules, just reuse this internally).

We could think of (eventually) refactoring our system preferences to fit here, or not, and just use it as the backend for some settings that require this.

Cheers

[1] https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=26129

--
Tomás Cohen Arazi
Theke Solutions (http://theke.io)
✆ +54 9351 3513384
GPG: B2F3C15F