LP#1154235 Allow inactive patron barcode to be loaded

This addresses LP#1154235 by modifying the evergreen.get_barcodes
function to allow users to retrieve patrons in barcode retrieve
who have inactive barcodes.

This returns to functionality in versions prior to around 2.2.x
series.

End result is staff receiving an alert that the patron was
accessed with an invalid barcode.

Signed-off-by: Michael Peters <mpeters@emeralddata.net>
Signed-off-by: Ben Shum <bshum@biblio.org>
Stamping upgrade for inactive barcode retrieval

Signed-off-by: Ben Shum <bshum@biblio.org>
Fix holding lib for certain distribution svrs

On a serial virtual record (svr), the holding lib is expected to be
just an ID.  In one logic branch, Search/Serial.pm was attaching the
entire aou object, and we should instead attach just the ID of this
object.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Two new QP filters: create_date and edit_date

These filter on the fields of the same name in biblio.record_entry.

e.g.
    create_date(,2013-02-01)  =>  records created before 2013-02-01
    create_date(2013-02-01)   =>  records created since 2013-02-01
    create_date(2013-02-01,2013-02-28)  =>  records created in Feb 2013
    create_date(yesterday)    =>  records since created yesterday

[LFW] Reviewed and added a single missing 'use' line; rewrote commit
message; release note.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Allow nesting of create_date and edit_date filters

As gently suggested by tsbere, this commit allows nesting of said
filters.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Serials special status support for Items tab

The Serial Control interface prevents direct editing of item status, as
some status changes require additional updates and/or can create data
conflicts.

In the current state, though, we have no way to set three important
statuses: claimed, not held, and not published.  At some point, claims in
particular should be more than a simple status, but in the meantime, the
ability to set these should not be overlooked.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Release notes for Serial Control special statuses

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Additional action/trigger helper functions

Added to the 'helpers' environment for action/trigger templates

 * get_org_unit -- get org object from id
 * escape_csv -- escapes strings ia csv values
 * get_user_setting

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Action/trigger user barred/unbarred hooks

New active A/T hooks 'au.barred' and 'au.unbarred', plus PatronBarred
and PatronNotBarred validators, plus code to make the hooks dance.

Signed-off-by: Bill Erickson <berick@esilibrary.com>

Conflicts:
	Open-ILS/src/sql/Pg/950.data.seed-values.sql

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Seed data for CSV notification export

Full set of seed data for CSV action/trigger notification batch exports.
The seed data is added to its own file and not automatically loaded into
new installs (or via upgrade script) since it adds a significant number
of new event definitions, probably more than most installs need by
default.

Review the event defs. and their parameters prior to loading this seed
data, as it only represents one possible set of CSV notification
options.  For example, it assumes one type of "notify media" for all
created notices.  It may necessary to add additional event defs to cover
additional media, etc.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Action/Trigger template output aggregator

Script to collect template output data from action-trigger events,
potentially spanning multiple event definitions, and stitching the
output together into a single file / output.  The file may then be
delivered to a 3rd party via sFTP/SCP using config.remote_account.

The primary use case of the script is for aggregating CSV, XML, etc.
output to deliver to a 3rd party for notification purposes (e.g. phone,
print notices).  This is useful because a) no one event definition can
cover all notification types and b) template output files can become too
large to practically store in the DB and deliver to/from opensrf
services.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Support FTP/SCP delete operation in RemoteAccount

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Script to collect CSV notification status responses

For 3rd-party services which provide batch notifications status updates
via CSV file.  The script assumes the action/trigger event definition ID
is included in the response and, from there, applyes the "status" value
to the async_output of the event definition in question.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Batch CSV notifications release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
A/T aggregator --granularity option

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Stamping upgrade script for user-barred A/T hooks
QP search modifier '#deleted'

These tweaks involve an internal flag that's off by default. If you
want '#deleted', you'll have to turn it on explicitly at your site (and
reingest existing records) to get the functionality. If you don't need
'#deleted', you may prefer to leave the setting off so that your system
will be purged (as before) of useless (to you) metarecord mappings
taking up room in the database for deleted bibs.

[LFW] upgrade script; commit message; release note

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Stamping upgrade script for #deleted modifier support

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Return calculated value for SIP recall_ok test

Determine the value for the "recall OK" testing for patron information
requests the same we we determine the value for ciruclations and holds.
Previously, the recall-OK test always returned false, presumably since
recalls are not currently supported in Evergreen SIP.

Note that like holds and circs, we determine whether a user has good
standing based on the users penalties and whether the user is active /
non-barred.  Though we could in some cases, we are not checking whether
the user has the required permission to perform specific tasks.

This feature is enabled via a new oils_sip.xml configuration option:

<option name='patron_calculate_recal_ok' value='true' />

This option is disabled by default.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Added a second no attempt to code to the authority thesaurus for spaces.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>