]> git.evergreen-ils.org Git - Evergreen.git/commit
Grace period auto extension and backdate awareness
authorThomas Berezansky <tsbere@mvlc.org>
Thu, 15 Sep 2011 16:10:12 +0000 (12:10 -0400)
committerMike Rylander <mrylander@gmail.com>
Mon, 10 Oct 2011 17:28:47 +0000 (13:28 -0400)
commite4bb24703fe6a73a649691761b2df308dd21bbbf
tree97574c1956489f28f57882b82a7960f82426d879
parentcdb637c0e24b5b9a04c6c66b5afeffd26d9e5d0d
Grace period auto extension and backdate awareness

Grace period auto extension:

Default is "grace periods don't auto extend".

OU setting turns on grace period auto extension. By default they only do so
when the grace period ends on a closed date, but there are two modifiers to
change that.

The first modifier causes grace periods to extend for all closed dates that
they intersect. This is "grace periods are only consumed by open days."

The second modifier causes a grace period that ends just before a closed
day, with or without extension having happened, to include the closed day
(and any following it) as well. This is mainly so that a backdate into the
closed period following the grace period will assume the "best case" of the
item having been returned after hours on the last day of the closed date.

Backdate grace period awareness:

By moving grace period calculations into a shared location backdating can
check the grace period, including extensions. If it finds that the backdate
is within the grace period (before or after extension) then instead of
voiding the fines for after the backdate it instead voids all fines for the
circulation. This emulates what would have happened (no fines) if the item
had been checked in at the time the backdate was made to take effect.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
Open-ILS/src/sql/Pg/950.data.seed-values.sql
Open-ILS/src/sql/Pg/upgrade/XXXX.data.grace_period_extend.sql [new file with mode: 0644]