Evergreen.git
5 years agoTPAC: Address severe accessibility issues
Dan Scott [Thu, 14 Mar 2013 21:52:09 +0000]
TPAC: Address severe accessibility issues

Using the Chrome Accessibility Dev Tools extension to run accessibility
audits against the TPAC turned up some "severe" issues, such as input
widgets lacking labels. In most cases the text for the labels was
present, but it needed to be associated with a <label> element. In some
other cases, it was easier to use the aria-label attribute to give the
widget an accessible label. Finally, we can use the placeholder
attribute where warranted as an accessible label.

These changes address the first set of accessibility issues I came
across via the audits and could address quickly.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoFix spelling error of "Successfully" in ils_events.xml
Michael Peters [Fri, 15 Mar 2013 13:57:55 +0000]
Fix spelling error of "Successfully" in ils_events.xml

LP#1155495 "card transaction was processed successfuly" is
spelled incorrectly.   This corrects that misspelling.

Signed-off-by: Michael Peters <mpeters@emeralddata.net>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>

5 years agoUse a consistent spelling of "Pickup" throughout the code
Michael Peters [Fri, 15 Mar 2013 13:47:26 +0000]
Use a consistent spelling of "Pickup" throughout the code

LP#1155494 In myopac/holds.tt2 the text "PickUp Location" is
used, and everywhere else it's "Pickup Location".
Pick one spelling and stick to it.

Signed-off-by: Michael Peters <mpeters@emeralddata.net>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>

5 years agoEnable dojo in TPAC if using newer Novelist API
Ben Shum [Fri, 22 Feb 2013 05:03:58 +0000]
Enable dojo in TPAC if using newer Novelist API

Enable dojo if the apache variable for Novelist URL is set. This avoids
issues such as needing to have dojo enabled via either AutoSuggest or
Google Books preview, which may not be enabled by every TPAC.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

5 years agoSupport new-style Novelist for TPAC.
Bill Erickson [Thu, 11 Oct 2012 20:09:12 +0000]
Support new-style Novelist for TPAC.

Updates the Novelist loading script to use the newer Novelist API.

Includes minor change to example/apache/eg_vhost.conf for environment
variables.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoLP 1155611 - prevent unnecessary load of fm_IDL.xml
Bill Erickson [Fri, 15 Mar 2013 13:24:45 +0000]
LP 1155611 - prevent unnecessary load of fm_IDL.xml

Ensure fm_IDL.xml is loaded only when IDL2js has not been loaded.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoWrap upgrade script for use ID as TCN value fix
Dan Scott [Fri, 15 Mar 2013 14:22:13 +0000]
Wrap upgrade script for use ID as TCN value fix

Signed-off-by: Dan Scott <dscott@laurentian.ca>

5 years agoLP#1155329: better enforce cat.bib.use_id_for_tcn
Galen Charlton [Thu, 14 Mar 2013 21:17:54 +0000]
LP#1155329: better enforce cat.bib.use_id_for_tcn

Restore previous behavior to the maintain_901() trigger
function so that bib records that are loaded without
explicitly setting the TCN have it set to the bib ID
when the cat.bib.use_id_for_tcn global flag is set, rather
than 'AUTOGENERATED-xxx'.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>

5 years agoAllow translating one final untranslatable error message in checkout interface
Pasi Kallinen [Thu, 14 Mar 2013 09:21:01 +0000]
Allow translating one final untranslatable error message in checkout interface

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoSupport Apache 2.4 configuration directives
Dan Scott [Thu, 17 Jan 2013 03:13:41 +0000]
Support Apache 2.4 configuration directives

Apache 2.4 uses a different server-side include syntax, but we can
direct it to use the old syntax via the SSILegacySyntax directive.

2.4 also uses different access control syntax: "Require all granted"
instead of "Allow from all", for example.

Accordingly, create a parallel examples/apache_24 directory that
contains sample Apache configuration files suitable for Apache 2.4 and
higher.

Also, amend the README to reflect Apache 2.4 and higher.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoAdd "Show Holds on Bib" menu items
Thomas Berezansky [Mon, 8 Oct 2012 03:14:27 +0000]
Add "Show Holds on Bib" menu items

Add a "Show holds on bibs" option from item checkin, item status, and patron
hold interfaces. This makes it quicker to flip to viewing who else has holds
on an item instead of having to click an option to see the bib, then clicking
in the menus for view holds. One less click.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoRepair ACQ nls file synax
Bill Erickson [Thu, 14 Mar 2013 12:37:55 +0000]
Repair ACQ nls file synax

Remove trailing comma, which breaks the PO building process.  Thanks to
Pasi Kallinen for spotting this.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoSerials: printing routing slips fails with Javascript error
Lebbeous Fogle-Weekley [Tue, 11 Dec 2012 21:58:33 +0000]
Serials: printing routing slips fails with Javascript error

The symptom (an error in the Javascript console about dijit.form.Button
and an empty page for routing slips that you try to print at batch
recieve) may or may not be affected by whether you're in a production
environment with the pre-built dojo 1.3.3 package installed or a
development environment without it.

This simple fix makes the problem go away in any case.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoStamping upgrade for new general indexes
Ben Shum [Thu, 14 Mar 2013 02:50:35 +0000]
Stamping upgrade for new general indexes

Note: Changed the commands in the upgrade to CREATE INDEX CONCURRENTLY to be
in all caps to satisfy my own small sense of consistency.

Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoObserved speed increases through judicious indexing
Mike Rylander [Thu, 28 Feb 2013 18:28:20 +0000]
Observed speed increases through judicious indexing

These indexes drove high-cost queries down into the noise
at several sites.  They are more applicable for larger
installations, where "larger" can be defined as either "lots
of data in the db" or "has used Evergreen for a long time".

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoTPAC: Add config options to hide phone / user prefs
Dan Scott [Wed, 1 Aug 2012 15:12:36 +0000]
TPAC: Add config options to hide phone / user prefs

Libraries using centralized authentication (such as LDAP via
open-ils.auth_proxy) will not want to allow users to change their
passwords or email addresses.

In addition, many libraries do not want to deal with phone
notifications.

This commit adds preferences to config.tt2 that hide these options from
the user.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>

5 years agoPreserve serial interface context, if present
Dan Wells [Wed, 13 Mar 2013 21:05:43 +0000]
Preserve serial interface context, if present

If the new 'context' URL parameter is present, we need to make sure
it sticks around for a couple of the "deeper" views (streams and
items).

Also, preserve the tab when coming out of said views in 'scv'
context.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoTranslation file entries for serial note editors
Dan Wells [Wed, 13 Mar 2013 20:35:20 +0000]
Translation file entries for serial note editors

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoRelease notes for Serial Control with embedded Alt. Interface
Dan Wells [Tue, 12 Mar 2013 18:03:44 +0000]
Release notes for Serial Control with embedded Alt. Interface

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoMove serials interfaces closer together
Dan Wells [Fri, 8 Mar 2013 22:55:52 +0000]
Move serials interfaces closer together

Back in (I believe) 2.2, we brought the dijit issuance editor into the
serial control interface with two goals: having less code in more places,
and easing the transition to an eventual unified interface which would
likely be more widget-based.

That experiment was well received, so this commit takes things a large
step further in that direction.  Basically, we are embedding the
alternate subscription editing interface into the serial control
scaffolding, which ultimately amounts to giving you some of the
benefits of both.  You get the more modern and maintainable code from
the alternate interfaces, but keep the context-awareness and familiar
navigation of the non-alternate serial control.

That said, this change is not meant to be the last word in serials,
but rather a way to at least come closer together while we still
continue to learn what structures provide the best experience.

Finally, some feature additions were necessary to the alternate serials
code in order to make this change as seamless as possible.  In some
cases, the new feature only works in the embedded version, but a new
'context' variable makes that simple to adjust as we move forward.
Changes include:
  - note editors on subscriptions and distributions
  - labeled dropdown for distribution summary options
  - and legacy record entry linkages

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoNumering upgrade scripts related to acq batch update
Lebbeous Fogle-Weekley [Wed, 13 Mar 2013 20:47:11 +0000]
Numering upgrade scripts related to acq batch update

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoDistribution formula fund rollover setting
Bill Erickson [Fri, 8 Mar 2013 18:23:06 +0000]
Distribution formula fund rollover setting

Adds an org unit setting (acq.fund.rollover_distrib_forms) which
controls whether the fund value on distribution formulae is updated to
use the newly created fund during fiscal year rollover.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoLP 1154150 : repair formula entry retrieval
Bill Erickson [Wed, 13 Mar 2013 20:16:50 +0000]
LP 1154150 : repair formula entry retrieval

Repair code thinkos in distribution formula entry fleshing call /
traversal.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoLP 1154150 DB upgrade stamping
Bill Erickson [Wed, 13 Mar 2013 20:04:11 +0000]
LP 1154150 DB upgrade stamping

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

5 years agoAcq: Line item batch update UI
Lebbeous Fogle-Weekley [Fri, 8 Mar 2013 19:10:12 +0000]
Acq: Line item batch update UI

This UI enhancement uses the API method in the previous commit to allow
users to apply changes to the copies on a selected set of line items.

When successful, the updater just reloads the whole page, but it can be
made smarter later, i.e. by refreshing only the affected line items rows
in the display.

The UI only appears on POs for now, and is partly disabled if the PO has
already been activated.  It could appear elsewhere if it seems sensible
to put it elsewhere.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

5 years agoAcq: Line item batch update API method
Lebbeous Fogle-Weekley [Tue, 12 Feb 2013 19:40:27 +0000]
Acq: Line item batch update API method

This new method gives you a server-side way to make batch updates to
all the copies of a target set of lineitems.  Permissions are checked
for each target object.  The method returns OpenILS::Event instances
for all kinds of permission problems and other errors.  IDs of lineitems
affected are streamed back to the client in the successful case.

This also expands distribution formulae to contain more (optional)
fields so that they can be used to make updates to copies on all the
same fields that you can just specify individually.  IDL and interface
changes to support the new fields are included.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

5 years agoStamping upgrade scripts for MARC import tag stripping
Mike Rylander [Wed, 13 Mar 2013 20:39:15 +0000]
Stamping upgrade scripts for MARC import tag stripping

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoImport bib trash fields : release notes
Bill Erickson [Mon, 4 Mar 2013 18:26:28 +0000]
Import bib trash fields : release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoImport bib trash fields : XUL Z39.50 UI
Bill Erickson [Mon, 4 Mar 2013 15:48:12 +0000]
Import bib trash fields : XUL Z39.50 UI

In the Z39.50 staff search interface, staff may now select from optional
MARC trash field groups (within the org unit range) to be applied to
incoming Z39.50 records.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoImport bib trash field Vandelay UI
Bill Erickson [Fri, 1 Mar 2013 19:55:15 +0000]
Import bib trash field Vandelay UI

During bib record import, if any optional MARC trash field groups exist
(in the org unit range), a new multi-select option is displayed allowing
the user to specify which trash field groups should be applied to the
current record import/merge/overlay.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoImport bib trash field group admin UI
Bill Erickson [Fri, 1 Mar 2013 16:01:08 +0000]
Import bib trash field group admin UI

Staff client admin UI for managing MARC import trash fields.

Admin => Server Admin => MARC Import Remove Fields

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoStrip configured fields during import/overlay II
Bill Erickson [Thu, 28 Feb 2013 20:43:08 +0000]
Strip configured fields during import/overlay II

Support on-demand and always-apply strip groups.  Move stripping out to
shared util function.

Specifically, this adds support for optional strip-groups to these APIs:

open-ils.cat.biblio.record.xml.create
open-ils.cat.biblio.record.marc.replace
open-ils.cat.biblio.record.xml.import
open-ils.vandelay.bib_record.list.import
open-ils.vandelay.bib_queue.import

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoStrip configured fields during import/overlay
Mike Rylander [Mon, 18 Feb 2013 16:33:59 +0000]
Strip configured fields during import/overlay

Records coming in from the staff client may contain junk tags, and
we have a mechanism (not yet exposed) for defining such junk tags
in an inheritable way.  This applies said junk-tag removal based on
said configuration.  The configuration interface is yet to come.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoMARC import tag stripping : SQL / IDL
Bill Erickson [Wed, 27 Feb 2013 20:32:56 +0000]
MARC import tag stripping : SQL / IDL

* Adds a new table vandelay.import_bib_trash_group for grouping "trash"
  fields.  Groups may be optional or "always_apply".  Always-apply groups
  contain MARC fields which are to be unconditionally removed during
  import.

* Updates vandelay.import_bib_trash_fields for putting them into groups.

* IDL changes to accommodate the above

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoMARC21 feed support
Mike Rylander [Fri, 8 Mar 2013 18:21:23 +0000]
MARC21 feed support

Now you can get MARC21 feeds from OpenSearch, e.g.
http://<host>/opac/extras/opensearch/1.1/-/marc21?searchTerms=piano

with the Concerto dataset.

[LFW] Syntax corrections, utf-8 encoding, release note

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoAcq: two tweaks to UI improvements in previous commit
Lebbeous Fogle-Weekley [Wed, 13 Mar 2013 14:43:40 +0000]
Acq: two tweaks to UI improvements in previous commit

Suggested by Bill Erickson:
  * Prevent interface locking up with the Mark Received/Unreceived
    actions when nothing is selected
  * Make new lineitem batch receive/rollback API methods actually stream

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

5 years agoAcq: several interface improvements
Lebbeous Fogle-Weekley [Tue, 26 Feb 2013 19:28:40 +0000]
Acq: several interface improvements

Several usability improvements throughout Acq, including:

  * A logical re-ordering of the main "actions" dropdown in several Acq
    interfaces (selection lists, purchase orders, acq search results, MARC
    federated search interface, etc).
  * "Actions" dropdown also has its options enabled/disabled depending what
    interface you're seeing it through, and redundant entries are
    removed from the per-lineitem secondary dropdown.
  * Add to Purchase Order dialog added to "actions" dropdown
  * Middle layer support for adding many line items to a PO at once
  * Create/add to Purchase Order operations can no longer steal line
    items from current POs
  * Create invoice from / link to invoice now work in new tab
  * Receive/unreceive now by selected lineitem instead of whole PO
  * Claim policy application works more simply now
  * Invoices interface auto-populates "# Invoiced" column with number of
    invoicable copies, and copies the "billed cost" column to the
    "amount paid" column if the latter doesn't have anything in it yet.
  * You can now only cancel specific lineitems when they're actually on
    a PO and have the state of 'on-order'.
  * Avoid double-activation of POs at UI level
  * Disable invoice and cancel options for whole pending POs
  * Disable zero-copy checkbox for activated POs
  * Disable new misc charges (acq.invoice_item) for activated POs

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

5 years agoskip xulG.get_barcode if no barcode completion
Jason Etheridge [Mon, 11 Mar 2013 19:27:30 +0000]
skip xulG.get_barcode if no barcode completion

For Check In and Check Out interfaces, skip the xulG.get_barcode call if there
are no active Barcode Completion entries (under Admin->Local Administration->
Barcode Completion) at the time of the staff client login sequence.

However, for Check Out, an exception is made if the "Load patron from Checkout"
library setting is in effect, since that functionality depends on
xulG.get_barcode.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>

5 years agoACQ inline copy display UI repairs
Bill Erickson [Tue, 12 Mar 2013 13:08:14 +0000]
ACQ inline copy display UI repairs

* Callnumber => Call Number

* Replace the potentially vague "✓ Expand" link with the more explicit
  "Expand All"

Thanks to kmlussier for the suggestions.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoACQ PO inline details view
Bill Erickson [Wed, 16 Jan 2013 22:13:50 +0000]
ACQ PO inline details view

Adds a new 'expand' lineitem option which produces a table inline below
the lineitem title, author, etc. containing copy information.  Each copy
linked to the lineitem is represented as a row in the table with owning
lib, copy location, fund, barcode, callnumber, and notes.  An option to
expand/collapse all is also present.

Release notes included.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoUpgrade script numbering for acq order indentifier selector
Lebbeous Fogle-Weekley [Wed, 13 Mar 2013 19:09:31 +0000]
Upgrade script numbering for acq order indentifier selector

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoTeach ACQ EDI and print PO templates about order identifiers
Bill Erickson [Wed, 23 Jan 2013 20:10:42 +0000]
Teach ACQ EDI and print PO templates about order identifiers

Update both templates to look for the preferred order identiier value
instead of the first reasonable it can find.

ISSN identifiers are now correctly encoded in the EDI as well.

[LFW] Fix permission numbering flub.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoACQ order identifier release notes
Bill Erickson [Mon, 11 Mar 2013 21:01:31 +0000]
ACQ order identifier release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoACQ order identifier UI
Bill Erickson [Fri, 18 Jan 2013 17:27:28 +0000]
ACQ order identifier UI

In the lineitem table show the set of possible order identifier types
and values.  The user may enter new values when necessary.  When changes
are applied, the selected order identifier is applied to each lineitem.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoACQ API for setting the lineitem order identifier
Bill Erickson [Mon, 21 Jan 2013 19:51:48 +0000]
ACQ API for setting the lineitem order identifier

API: open-ils.acq.lineitem.order_identifier.set

Given an existing lineitem_attr (typically a marc_attr), this will
create a matching local_attr to store the name and value and mark
the attr as the order_ident.  Any existing local_attr marked as
order_ident is removed.  When necessary, the value (isbn, issn, upc) is
added to the record first to create the marc attribute.  If the lineitem
is linked to a bib record and the user has the correct permissions, any
new data will also be applied to the bib record.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoACQ lineitem order identifier SQL/IDL
Bill Erickson [Fri, 18 Jan 2013 17:27:20 +0000]
ACQ lineitem order identifier SQL/IDL

New 'order_ident' column on acq.lineitem_attr to represent which
attribute should be considered the order identifier for the item.

New permission ACQ_SET_LINEITEM_IDENTIFIER allowing staff to apply
lineitem identifiers.

New permission ACQ_ADD_LINEITEM_IDENTIFIER is added for allowing staff
to update linked bib records when a order identifier is added to a
lineitem.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoExtract multiple like values from lineitem
Bill Erickson [Tue, 22 Jan 2013 19:35:22 +0000]
Extract multiple like values from lineitem

Make it possible to extract multiple values with the same MARC tag
during acquisitions lineitem ingest.  Prior to this, only one (e.g.)
ISBN for each record would be extracted as a lineitem attribute.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoStamping upgrade scripts for Z-source attr DELETE cascade (and repairing previous...
Mike Rylander [Wed, 13 Mar 2013 18:52:16 +0000]
Stamping upgrade scripts for Z-source attr DELETE cascade (and repairing previous upgrade script id)

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoLP 849008 : Cascade delete Z39.50 attributes
Bill Erickson [Wed, 13 Mar 2013 18:26:48 +0000]
LP 849008 : Cascade delete Z39.50 attributes

Force deletion of Z39.50 attributes within the database when the Z39.50
source to which the attributes refer is deleted.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoStamping upgrade scripts for "Storing Z39.50 Passwords on the server"
Mike Rylander [Wed, 13 Mar 2013 18:47:16 +0000]
Stamping upgrade scripts for "Storing Z39.50 Passwords on the server"

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoAdd CASCADE and DEFERRABLE clauses to fkey
Mike Rylander [Wed, 13 Mar 2013 18:45:22 +0000]
Add CASCADE and DEFERRABLE clauses to fkey

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoZ39.50 stored credentials
Bill Erickson [Wed, 27 Feb 2013 18:08:07 +0000]
Z39.50 stored credentials

* New non-IDL-accessible DB table for storing credentials
* API for applying credentials
* Additions to the Z39.50 configuration UI for applying and clearing
  credentials.
* At Z39.50 search time, if no creds are provided by the caller, but
  creds are configured in the database, creds from the DB are used to
  make the Z39 search call.
* Release notes included

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoDefault and force patrons to TPac
Thomas Berezansky [Wed, 25 Apr 2012 15:55:42 +0000]
Default and force patrons to TPac

May be incomplete, but better than nothing.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoDisable JSPac in staff client
Thomas Berezansky [Mon, 17 Sep 2012 14:02:13 +0000]
Disable JSPac in staff client

This includes removing the toggle option for TPac usage.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoLP 1134829 - stamping upgrade script
Bill Erickson [Wed, 13 Mar 2013 17:33:05 +0000]
LP 1134829 - stamping upgrade script

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

5 years agoAdded a second no attempt to code to the authority thesaurus for spaces.
Steven Callender [Wed, 27 Feb 2013 21:42:18 +0000]
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>

5 years agoReturn calculated value for SIP recall_ok test
Bill Erickson [Wed, 26 Dec 2012 15:29:30 +0000]
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>

5 years agoStamping upgrade script for #deleted modifier support
Mike Rylander [Wed, 13 Mar 2013 17:08:42 +0000]
Stamping upgrade script for #deleted modifier support

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoQP search modifier '#deleted'
Mike Rylander [Fri, 8 Mar 2013 19:26:17 +0000]
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>

5 years agoStamping upgrade script for user-barred A/T hooks
Mike Rylander [Wed, 13 Mar 2013 16:52:45 +0000]
Stamping upgrade script for user-barred A/T hooks

5 years agoA/T aggregator --granularity option
Bill Erickson [Thu, 20 Dec 2012 21:38:16 +0000]
A/T aggregator --granularity option

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoBatch CSV notifications release notes
Bill Erickson [Tue, 11 Dec 2012 17:09:42 +0000]
Batch CSV notifications release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoScript to collect CSV notification status responses
Bill Erickson [Tue, 11 Dec 2012 17:07:37 +0000]
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>

5 years agoSupport FTP/SCP delete operation in RemoteAccount
Bill Erickson [Thu, 10 Jan 2013 17:25:09 +0000]
Support FTP/SCP delete operation in RemoteAccount

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoAction/Trigger template output aggregator
Bill Erickson [Tue, 11 Dec 2012 17:03:27 +0000]
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>

5 years agoSeed data for CSV notification export
Bill Erickson [Tue, 11 Dec 2012 16:59:50 +0000]
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>

5 years agoAction/trigger user barred/unbarred hooks
Bill Erickson [Thu, 27 Dec 2012 15:58:01 +0000]
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>

5 years agoAdditional action/trigger helper functions
Bill Erickson [Tue, 11 Dec 2012 16:57:42 +0000]
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>

5 years agoRelease notes for Serial Control special statuses
Dan Wells [Tue, 12 Mar 2013 17:47:41 +0000]
Release notes for Serial Control special statuses

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>

5 years agoSerials special status support for Items tab
Dan Wells [Fri, 14 Dec 2012 19:22:20 +0000]
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>

5 years agoAllow nesting of create_date and edit_date filters
Mike Rylander [Tue, 12 Mar 2013 20:01:25 +0000]
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>

5 years agoTwo new QP filters: create_date and edit_date
Mike Rylander [Fri, 8 Mar 2013 20:13:11 +0000]
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>

5 years agoFix holding lib for certain distribution svrs
Dan Wells [Thu, 28 Feb 2013 20:32:07 +0000]
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>

5 years agoStamping upgrade for inactive barcode retrieval
Ben Shum [Tue, 12 Mar 2013 21:22:36 +0000]
Stamping upgrade for inactive barcode retrieval

Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoLP#1154235 Allow inactive patron barcode to be loaded
Michael Peters [Tue, 12 Mar 2013 20:14:23 +0000]
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>

5 years agoEscape barcode completion button labels
Thomas Berezansky [Mon, 11 Mar 2013 19:09:51 +0000]
Escape barcode completion button labels

Some characters piss off the XML parser.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoShow OPAC-invisible copies in TPAC in staff context
Dan Scott [Sat, 9 Mar 2013 03:41:08 +0000]
Show OPAC-invisible copies in TPAC in staff context

We were not calling the staff variation of the copy count method; thus,
the record details template was skipping the copy table in the event
that all copies for a given record were marked as OPAC-invisible via
either copy visibility or shelving location visibility.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoDon't populate the MFHD menu with distributions
Dan Wells [Thu, 28 Feb 2013 19:49:16 +0000]
Don't populate the MFHD menu with distributions

If a distribution has no legacy record, it shouldn't get a menu
entry in the MFHD menus. A magic id of '-1' is used to indicate
this case, so we need to check for that when populating
mfhdDetails via the TPAC.

Also, entryNum must be an int, not a string, because it is
incremented prior to display. Removing the quotes solves this
display issue.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoTweak Google Book Preview Display, Take 2
Dan Wells [Wed, 27 Feb 2013 14:34:58 +0000]
Tweak Google Book Preview Display, Take 2

After some additional feedback, this commit makes three changes
to the Google Book preview link:

1) As a solution offered by Dan Scott, rather than move the
button, we simply scroll to the preview when the button is clicked.
This effectively makes it impossible to miss. (In the current
code it sometimes loads off the screen.)

2) Make the viewer display in the same style as other added
content.

3) Allow the added content header to function as an additional
toggle to turn the viewer on and off.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoMake Google Books Preview Honor Setting
Dan Wells [Wed, 27 Feb 2013 14:24:33 +0000]
Make Google Books Preview Honor Setting

The new Google Book Preview was loading even if the setting was
off, provided some other 'want_dojo' feature was loaded. This
change will honor the setting regardless.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoUser seed data has (mostly) valid addresses
Bill Erickson [Wed, 6 Mar 2013 18:10:21 +0000]
User seed data has (mostly) valid addresses

Make all but 3 (2 patrons, 1 staff) user addresses in the sample SQL
seed data valid.  Prior to this, most addresses were marked as
non-valid.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoError Checking for Hold Targeter
Thomas Berezansky [Fri, 6 Apr 2012 18:39:28 +0000]
Error Checking for Hold Targeter

Because having it leave lock files around is annoying.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoStamping upgrade for "exclude_invisible_acn" unapi holdings filter
Ben Shum [Mon, 11 Mar 2013 21:45:23 +0000]
Stamping upgrade for "exclude_invisible_acn" unapi holdings filter

Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoTPAC my-list call number includes child orgs
Bill Erickson [Wed, 6 Mar 2013 21:02:37 +0000]
TPAC my-list call number includes child orgs

For my-list call number display, if the most relevant call number is a
child of any of the context org units (physical/pref/search), it is
considered relevant for purposes of call number display.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agotpac avoid more org_unit template var leaks
Bill Erickson [Tue, 12 Feb 2013 17:19:58 +0000]
tpac avoid more org_unit template var leaks

Avoid using the variable name 'org_unit' in misc_utils (when compiling
copy visibility info) since the value can leak into the org_selector
template, disrupting the rendering of the org selector.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoConsistent response type from TPAC pref lib lookup
Bill Erickson [Mon, 28 Jan 2013 18:40:12 +0000]
Consistent response type from TPAC pref lib lookup

In some contexts, the $user->home_ou field is fleshed with a real org
unit object.  Ensure that the response value from _get_pref_lib in the
TPAC takes this into consideration when finding the ID of the user's
home org unit.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoTPAC My List Call-Number Release Notes
Bill Erickson [Fri, 25 Jan 2013 14:32:38 +0000]
TPAC My List Call-Number Release Notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoShow local call number in TPAC My Lists display
Bill Erickson [Thu, 13 Dec 2012 16:34:50 +0000]
Show local call number in TPAC My Lists display

If an opac-visible call number exists that is owned by an org unit
relevant to the patron, show the (most relevant) call number label in
the My Lists display for each record in the list.  Call number is
displayed in both saved and temporary lists.

A call number is considered relevant if its owner is one of:

physical location library
preferred library (plib, home, etc.)
search library

This code leverages the new "exclude_invisible_acn" unapi filter to
ensure that we are only required to retrieve 1 call number in the unapi
output instead of an arbitrarily large set of call numbers, against
which we may have to filter non-visible call numbers.

This commit also addresses and outstanding TODO item in the tpac Perl:
Replace the last use of fetch_marc_xml_by_id with get_records_and_facets
and remove fetch_marc_xml_by_id

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years ago"exclude_invisible_acn" unapi holdings filter
Bill Erickson [Wed, 12 Dec 2012 22:14:09 +0000]
"exclude_invisible_acn" unapi holdings filter

When present in the unapi includes array, this filter ensures that no
call numbers with 0 opac-visible copies are included in the holdings_xml
output.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agounapi exclude_invisible_acn
Bill Erickson [Wed, 12 Dec 2012 19:58:26 +0000]
unapi exclude_invisible_acn

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoStamping upgrade for relaxing rank_ou sorting
Ben Shum [Mon, 11 Mar 2013 21:40:11 +0000]
Stamping upgrade for relaxing rank_ou sorting

Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agorank_ou() honors pref-lib in non-global context
Bill Erickson [Thu, 7 Feb 2013 18:43:19 +0000]
rank_ou() honors pref-lib in non-global context

When determining how to sort an org unit (e.g. sorting copies by circ
lib for display in the catalog), allow the pref-lib to affect the sort
order in global and non-global searches.

Org units are now sorted with the following criteria in the following
order.  For example, assume we are sorting a copy circ_lib:

1. circ_lib matches the search_lib
2. circ_lib matches pref_lib
3. distance of circ_lib from pref_lib when pref_lib is a child of
   search_lib, if circ_lib is a child of pref_lib.
   (For example, searching CONS with pref_lib SYS1, items at BR1 will
   sort ahead of items at BR3, since BR1 is a child of the pref_lib).
4. proximity of circ_lib to search_lib, when circ_lib is a child of
   search_lib.
5. In all other cases, circ_lib is sorted to the bottom with the rest of
   the riffraff.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>

5 years agoextract PO name from picklist upload
Bill Erickson [Wed, 21 Nov 2012 15:12:39 +0000]
extract PO name from picklist upload

If a PO name is encoded in a lineitem (via provider attribute
definition), extract that PO name when creating a new purchase order
from lineitems that were previously only linked to a selection list.
This allows staff to create selection lists first, then orders second,
while retaining the encoded purchase order name.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoStamping upgrade for serials harmonization
Mike Rylander [Mon, 11 Mar 2013 20:22:38 +0000]
Stamping upgrade for serials harmonization

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoFix divergence of stock serials schema and upgraded schema
Lebbeous Fogle-Weekley [Tue, 23 Oct 2012 16:25:18 +0000]
Fix divergence of stock serials schema and upgraded schema

And additionally make a function used in a constraint on
serial.issuance.holding_code a little bit smarter.

These issues were reported to me by Galen Charlton.

The upgrade script included here will set serial.issuance.holding_code
to NULL in cases where the value doesn't validate, but in those cases
there is no part of Evergreen that could have made use of the data
anyway, and the data is just plain bad.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoExclude copies that have been deleted from showing up on the browse holds shelf list.
Steven Callender [Thu, 4 Oct 2012 13:17:29 +0000]
Exclude copies that have been deleted from showing up on the browse holds shelf list.

If an item had been deleted while it had a status of On Holds Shelf, it would permanently show up on
the browse holds list. This will exclude deleted copies from the results.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoRemote Account Conify UI
Bill Erickson [Tue, 11 Dec 2012 20:50:56 +0000]
Remote Account Conify UI

Admin interface for config.remote_account.  To date, remote accounts
have been managed solely as EDI accounts, which have their own
interface.  If one wishes to add/manage non-EDI remote accounts, then
this new UI is needed.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

Conflicts:
Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul

[minor, related to adjacent addition]

5 years agoPulls the Copy Notes for the records, shows in the table, introduces a new style
edoceo [Thu, 21 Feb 2013 02:21:29 +0000]
Pulls the Copy Notes for the records, shows in the table, introduces a new style

Signed-off-by: edoceo <code@edoceo.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoStamping upgrade script for null SVF attribute value fix
Mike Rylander [Mon, 11 Mar 2013 19:41:00 +0000]
Stamping upgrade script for null SVF attribute value fix

Signed-off-by: Mike Rylander <mrylander@gmail.com>

5 years agoLP#1116509: prevent null SVF attribute value from breaking record import
Galen Charlton [Tue, 5 Feb 2013 18:12:02 +0000]
LP#1116509: prevent null SVF attribute value from breaking record import

Fix problem where a record could fail to be staged for import
with the following error:

ERROR: query string argument of EXECUTE is null
CONTEXT: PL/pgSQL function "extract_rec_attrs" line 72 at EXECUTE statement
SQL function "extract_rec_attrs" statement 1

This error would be triggered if at least one SVF attribute has a normalization
function defined that is applied to a null value during record import.

Patch is based on a suggestion by Bob Wicksall.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>