From 77abb023cb396d96f5362df46a633ed0d5d1a386 Mon Sep 17 00:00:00 2001 From: =?utf8?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=utf8 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 0000000000..e292252773 --- /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 866e1ea808..39fc0b0e88 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -1204,7 +1204,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 a5d69aba1b..3bfc8ab0ea 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 @@ -253,6 +253,13 @@ Circulation: Days: circulation rules only. 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 -- 2.39.5