LP 1169193 long-overdue SQL seed data

Seed data for managing long-overdue circulations.

* new copy status
* new billing types
* new org settings
* new permissions
* sample action/trigger event definitions

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 long-overdue automated processing

Middle layer components for marking circulations long overdue.  The
automation is controlled with an Action/Trigger event definition
(sample included in seed data), which uses a new MarkItemLongOverdue
reactor.  The reactor makes use of a new util function (AssetCommon.pm)
for doing the actual work and looking up the relevant org unit settings.

Inluded is a new PatronNotInCollections Validator, which can be used to
avoid marking circulations long overdue for patrons that are in
collections processing.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 long-overdue item checkin

Checkin of long-overdue items now goes through a very simimlar process
as check-in of Lost items.  Staff can control how long after the due
date (and potentially other date-related fields) the item may be
returned for a configurable set of refunds and/or reinstatement of
overdue fines.  All settings are controlled by a series of new org unit
settings specifically related to long-overdue processing.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 transit_slip macro for copy status

Adds support for a new 'transit_slip' receipt template macro called
"transit_copy_status", which displays the stored status of the
in-transit copy (i.e. the status the copy will be placed in once it
arrives at the transit destination).  This is useful, in particular, for
lost or long-overdue items which are not "immediately available" upon
checkin.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 long-overdue release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 Bypass longoverdue w/ default A/T runner

Avoid processing LONGOVERDUE circulations in the default
action_trigger_runner.pl filter.

When no custom filters are used, the script will provide it's own
default filter for circulation-based hooks.  This change ensure that
when the default filter is in use, the script will not attempt to
process longoverdue circulations, since they have already been processed
(which is how they became longoverdue in the first place).

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
LP 1169193 Support L/O xact close on paid

Middle-layer support for the org unit setting "Leave transaction
open when long overdue balance equals zero".  It behaves the same
as "Leave transaction open when lost balance equals zero", but for
long-overdue circs.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Stamping upgrade script for long overdue status -- LP 1169193.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>