From b4ad7f40569a4beed1732c4d174629c26e5f7ab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Holger=20Mei=C3=9Fner?= Date: Wed, 15 Jul 2015 10:49:41 +0200 Subject: [PATCH] Bug 14395: Add new syspref NoRenewalBeforePrecision MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently the 'NoRenwalBefore' setting is always based on the exact DateTime of the due date. This patch introduces a new global syspref for choosing if 'NoRenewalBefore' should instead be calculated based on date only. This is only relevant for loans caluclated in days. Hourly loans are not affected. To test: 1) Apply bug 14101, then apply this patch. 2) Run installer/data/mysql/updatedatabase.pl 3) Confirm that a new syspref NoRenewalBeforePrecision is available in administration. It should let you choose between 'date' (default) and 'exact time'. Sponsored-by: Hochschule für Gesundheit (hsg), Germany Signed-off-by: Jesse Weaver --- .../bug_14395-add-NoRenewalBeforePrecision-syspref.sql | 2 ++ installer/data/mysql/kohastructure.sql | 2 +- .../prog/en/modules/admin/preferences/circulation.pref | 7 +++++++ 3 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_14395-add-NoRenewalBeforePrecision-syspref.sql diff --git a/installer/data/mysql/atomicupdate/bug_14395-add-NoRenewalBeforePrecision-syspref.sql b/installer/data/mysql/atomicupdate/bug_14395-add-NoRenewalBeforePrecision-syspref.sql new file mode 100644 index 0000000..e292252 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_14395-add-NoRenewalBeforePrecision-syspref.sql @@ -0,0 +1,2 @@ +INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) +VALUES ('NoRenewalBeforePrecision', 'date', 'Calculate "No renewal before" based on date or exact time. Only relevant for loans calculated in days, hourly loans are not affected.', 'date|exact_time', 'Choice'); diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index b98b017..59b5e1b 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -1199,7 +1199,7 @@ CREATE TABLE `issuingrules` ( -- circulation and fine rules `hardduedatecompare` tinyint NOT NULL default "0", -- type of hard due date (1 = after, 0 = on, -1 = before) `renewalsallowed` smallint(6) NOT NULL default "0", -- how many renewals are allowed `renewalperiod` int(4) default NULL, -- renewal period in the unit set in issuingrules.lengthunit - `norenewalbefore` int(4) default NULL, -- no renewal allowed until X days or hours before due date. In the unit set in issuingrules.lengthunit + `norenewalbefore` int(4) default NULL, -- no renewal allowed until X days or hours before due date. `auto_renew` BOOLEAN default FALSE, -- automatic renewal `reservesallowed` smallint(6) NOT NULL default "0", -- how many holds are allowed `branchcode` varchar(10) NOT NULL default '', -- the branch this rule is for (branches.branchcode) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref index d9c7e25..58be718 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref @@ -248,6 +248,13 @@ Circulation: Calendar: the calendar to skip all days the library is closed. Datedue: the calendar to push the due date to the next open day - + - Calculate "No renewal before" based on + - pref: NoRenewalBeforePrecision + choices: + date: date. + exact_time: exact time. + - Only relevant for loans calculated in days, hourly loans are not affected. + - - When renewing checkouts, base the new due date on - pref: RenewalPeriodBase choices: -- 2.6.2