From 5a6ab5c925e61cc7f474bfb672c35a0697c29839 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 --- .../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 df123ee..9057134 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -1190,7 +1190,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 f9cd822..dcf6609 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 @@ -254,6 +254,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: -- 1.7.10.4