working/Evergreen.git
5 years agoLP#1269911: Release notes for Composite Record Attributes
Mike Rylander [Mon, 10 Feb 2014 19:10:38 +0000 (14:10 -0500)]
LP#1269911: Release notes for Composite Record Attributes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: Release notes for Multi-valued Fields and Controlled Attributes
Mike Rylander [Mon, 10 Feb 2014 19:02:22 +0000 (14:02 -0500)]
LP#1269911: Release notes for Multi-valued Fields and Controlled Attributes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1053397: removed extraneous MR formats global flag
Bill Erickson [Mon, 10 Feb 2014 19:12:15 +0000 (14:12 -0500)]
LP#1053397: removed extraneous MR formats global flag

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: TPAC generates format selector from icon_format attr
Bill Erickson [Thu, 6 Feb 2014 18:31:18 +0000 (13:31 -0500)]
LP#1269911: TPAC generates format selector from icon_format attr

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: composite attributes: configurable "icons" attribute
Bill Erickson [Wed, 5 Feb 2014 21:18:38 +0000 (16:18 -0500)]
LP#1269911: composite attributes: configurable "icons" attribute

Honor the configurable icon attribute within the TPAC.

Create a default set of icons, by copying from the existing icons,
which roughly map to the new "icon_format" record attribute
definition mappings.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911 composite attributes admin UI
Bill Erickson [Tue, 21 Jan 2014 22:47:41 +0000 (17:47 -0500)]
LP#1269911 composite attributes admin UI

New interface for managing composite record attribute definitions:

/eg/conify/global/config/composite_attr_entry_definition/<id>

The UI for a coded value map is accessed from an existing coded value
via a new "Manage" link column in the CCVM table.  The UI allows staff
to build tree-shaped boolean composite definitions for CCVMs in terms
of existing CCVMs.

Additionally, the record attribute definition UI now has a link from
each definition to the coded value map page for the attribute.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: Upgrade script for MVF and CRA
Mike Rylander [Wed, 15 Jan 2014 21:48:13 +0000 (16:48 -0500)]
LP#1269911: Upgrade script for MVF and CRA

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: Teach QueryParser new tricks
Mike Rylander [Wed, 15 Jan 2014 21:00:52 +0000 (16:00 -0500)]
LP#1269911: Teach QueryParser new tricks

QP Needs to be made aware of several new structures in the database.

First, we have added a new sort-supporting table called metabib.record_sorter
which holds values extracted by crad.sorter=true attrs.  This is used instead
of the mrd.attrs->"something" hstore composite.

Next, we teach QP how to convert from a list of user-supplied values across
many dynamic filters (based on crad) into an intarray query of ids extracted
from config.coded_value_map (in the case of controlled attributes) or
metabib.uncontrolled_record_attr_value (in the case of, you guessed it,
uncontrolled attributes).  This query is applied against the vlist column
of metabib.record_attr_vector_list, which is GIN indexed for speed.

Finally, metabib.record_attr is now a view over metabib.record_attr_vector_list
and is consequently going to be slow for general use.  We restrict
its inclusion in the core query to only the case of a during() filter
which requires access to the value of a bib's Date2 field.  For the
other common case, requiring access to the Date1 field, we instead
use the pubdate sort value now stored in metabib.record_sorter.  We
might consider making the specific sorter attribute used configurable
so that we can change the definition of pubdate down the road, but it
starts out (and generally stays) defined as equivalent to Date1.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: Teach the IDL about MVF- and CRA-related structures
Mike Rylander [Wed, 15 Jan 2014 18:17:39 +0000 (13:17 -0500)]
LP#1269911: Teach the IDL about MVF- and CRA-related structures

IDL link from ccvm => ccraed via composite_def field

IDL selector attribute for ccvm class

ccraed gets CUD actions

In conify/global/config/coded_value_map, if the selected attr type is
composite=true, show a link from each coded value to manage the
composite definition.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1269911: Database elements of MVF and CRA
Mike Rylander [Tue, 14 Jan 2014 21:28:04 +0000 (16:28 -0500)]
LP#1269911: Database elements of MVF and CRA

* Teach vandelay.marc21_physical_characteristics() to see all 007's

We use vandelay.marc21_physical_characteristics() to extract fixed
field data that lives in the 007.  Before this change, it would
only look at the first 007 in the record.  Now it will look at
all of them in turn, supporting configurations such as DVD+BluRay.

* Add intarray extension

We need intarray for GIN index support of integer arrays, which is
how we'll be storing the in-use record attribute value identifiers.

* Hidy hole in which to stick "uncontrolled" values

In order to make use of the massive speed increases provided by
intarray indexing, we need to use (you guessed it) integers.  But
uncontrolled record attributes are not necessarily (or even very
often) numbers.  We will store them in a table of unique (per
attribute) values, and use the id from that table in our intarray
indexing.  That id comes from a DECREMENTING serial that starts
at -1 and counts downward.  This avoids collision with the other
set of integers (the id from config.coded_value_map) that we will
use for controlled record attribute values.

* Add a multi flag for record attrs

We pre-coordinate which record attrs are allowed to be multi-valued
with this new bool.  Most can be, we set the default to true and
adjust the seed data for those that should be false (sorters and
fields in the leader).

* New intarray-focused attribute extraction

We rewrite the record attribute extraction to capture all the
record-supplied values for each attribute (where multi is true)
and store that list in the new (fkey-corrected) metabib.record_attr_vector_list
table.  Only filters make it into this table.

We also insert a parameter after the record id to accept a list of
record attributes we want to rewrite. This defaults to NULL to rewrite
all of them.

Sorters are stored in a new, separate table built specifically for them.

metabib.record_attr becomes a vew atop metabib.record_attr_vector_list
which expands the intarray stored therein into an hstore. For
multi=true attributes, only one will be returned through this view,
as is HSTORE's way, and which will be returned is undefined.  However
this view is only provided for the purpose of backward compat with
reports or other locally defined logic.

And, finally, baseline seed data

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoFix syntax error in seed data
Remington Steed [Fri, 21 Feb 2014 14:54:47 +0000 (09:54 -0500)]
Fix syntax error in seed data

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoStamping 0863 - Stripe credit card payment options
Dan Wells [Thu, 20 Feb 2014 21:35:21 +0000 (16:35 -0500)]
Stamping 0863 - Stripe credit card payment options

Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoRelease note for Stripe payment support
Lebbeous Fogle-Weekley [Fri, 11 Oct 2013 05:13:44 +0000 (01:13 -0400)]
Release note for Stripe payment support

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoSupport Stripe payments with some new code and some rearranged code ...
Lebbeous Fogle-Weekley [Thu, 19 Sep 2013 15:00:00 +0000 (11:00 -0400)]
Support Stripe payments with some new code and some rearranged code ...

... behind the open-ils.circ.money.payment method.

- Also add Business::Stripe as a CPAN module to the pre-reqs installers.
- If payment processor is Stripe, only show form if Javascript enabled.

Our implementation of payments via Stripe doesn't work without Javascript.
That's part of the point. Using Stripe really limits a site's worries
about PCI compliance because users' credit card number and security
codes are never transmitted to the [Evergreen] server at all.  That data
goes to Stripe instead (using Javascript) and from that we get back a
one-time token from Stripe to give to our server instead.

Thanks to Jason Boyer at the Indiana State Library for recognizing the
value of supporting approaches like that in Evergreen and for starting
the work.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Conflicts:
Open-ILS/src/templates/opac/myopac/main_payment_form.tt2

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoDB upgrade script for Stripe payments; seed data; minor template fixes
Lebbeous Fogle-Weekley [Thu, 19 Sep 2013 13:51:47 +0000 (09:51 -0400)]
DB upgrade script for Stripe payments; seed data; minor template fixes

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Conflicts:
Open-ILS/src/templates/opac/myopac/main_payment_form.tt2

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoSeparate stripe js into stripe.tt2, add seed data for ou settings
Jason Boyer [Thu, 19 Sep 2013 13:45:25 +0000 (09:45 -0400)]
Separate stripe js into stripe.tt2, add seed data for ou settings

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoRough draft of integrating Stripe support into the opac payment page.
Jason Boyer [Thu, 19 Sep 2013 13:16:30 +0000 (09:16 -0400)]
Rough draft of integrating Stripe support into the opac payment page.

Conflicts:
Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
Open-ILS/src/templates/opac/parts/base.tt2

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoDuplicate 0851 as 0862 for backport clarity
Dan Wells [Thu, 20 Feb 2014 15:01:46 +0000 (10:01 -0500)]
Duplicate 0851 as 0862 for backport clarity

Rather than backport 0851 after 0852 has already been backported,
let's give 0851 a second number.  It probably wouldn't have bitten
anyone, but there's no harm in running this upgrade again, and I
don't think it hurts to be extra clear.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP1223903 - Also bump the schema config
Ben Shum [Wed, 19 Feb 2014 19:39:06 +0000 (14:39 -0500)]
LP1223903 - Also bump the schema config

Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1223903 - Stamping upgrade script for new authority_record_entry indexes
Ben Shum [Wed, 19 Feb 2014 19:22:37 +0000 (14:22 -0500)]
LP1223903 - Stamping upgrade script for new authority_record_entry indexes

Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1223903 - Add release notes for rewrite of marc_export.
Jason Stephenson [Thu, 6 Feb 2014 16:18:49 +0000 (11:18 -0500)]
LP1223903 - Add release notes for rewrite of marc_export.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1223903 - Rewrite marc_export.in in support-scripts.
Jason Stephenson [Wed, 5 Feb 2014 16:24:05 +0000 (11:24 -0500)]
LP1223903 - Rewrite marc_export.in in support-scripts.

This commit rewrites marc_export.in in the support-scripts  src directory.
It will still be transformed into marc_export at build time.  This change
replaces the current marc_export scipt with a faster, DBI based alternative.

The replacement support nearly all of the features of the original, except
for the progress output.  Much of this information is harder to gather
with the new design.

This is a squashed, rebased commit of previous work.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1223903 - Add indexes to authority.record_entry.
Jason Stephenson [Tue, 10 Dec 2013 20:16:21 +0000 (15:16 -0500)]
LP1223903 - Add indexes to authority.record_entry.

We want indexes on edit_date and create_date for authority.record_entry
so that date-based searching is faster for authority record export.  It
likely will prove useful for other features.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1223903 - Add from_bare_hash to Fieldmapper.pm.
Jason Stephenson [Thu, 26 Sep 2013 05:53:35 +0000 (01:53 -0400)]
LP1223903 - Add from_bare_hash to Fieldmapper.pm.

Teach the Perl Fieldmapper.pm to build objects from a hashref in a
similar manner to how the JS Fieldmapper already can.  You might use
it if you retrieved a database row as a hashref, like so:

my $hashref = {};
my $class = Fieldmapper::class_for_hint('bre');
my $bre = $class->from_bare_hash($hashref);

We also modify the Fieldmapper's properties method to sort the array of
field names it returns by position.  This makes the return value a lot
more useful for on the fly object construction and other fancy tricks.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP#1262722 Fix DB supersedes/deprecates pgtap test
Bill Erickson [Wed, 19 Feb 2014 15:22:37 +0000 (10:22 -0500)]
LP#1262722 Fix DB supersedes/deprecates pgtap test

Sort multi-value arrays before passing them off to pgtap for test
comparison. Otherwise, pgtap tests may fail with:

Failed test 5
        have: {AAAC,AAAB}
        want: {AAAB,AAAC}

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoStamping upgrade script for supsersede/deprecate logic fixes
Mike Rylander [Tue, 18 Feb 2014 18:01:08 +0000 (13:01 -0500)]
Stamping upgrade script for supsersede/deprecate logic fixes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoDB patch supersede/deprecate logic repairs; unit tests
Bill Erickson [Thu, 19 Dec 2013 15:27:26 +0000 (10:27 -0500)]
DB patch supersede/deprecate logic repairs; unit tests

* Fix some thinkos in the various DB functions for calculating
  supersedes/deprecation logic.

* Added a pgtap test

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoStamping upgrade for Granular Staff Initials settings
Mike Rylander [Tue, 18 Feb 2014 17:47:42 +0000 (12:47 -0500)]
Stamping upgrade for Granular Staff Initials settings

Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoAdd granular settings for requiring staff initials for notes
Ben Shum [Tue, 28 May 2013 18:54:27 +0000 (14:54 -0400)]
Add granular settings for requiring staff initials for notes

Up till now, there has only been one setting for making staff initials required
for all of the various note fields. Instead, let's break this up into separate
org unit settings for each type of note field, giving us more flexiblity in
making use of the append staff initials feature.

These three types of notes will now have settings to add initials for each:

- patron penalties/messages
- patron information notes
- copy (item) notes

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
5 years agoLP#1272074 Physical Characteristics Wizard for the MARC Editor (Part II)
Lebbeous Fogle-Weekley [Tue, 18 Feb 2014 17:15:18 +0000 (12:15 -0500)]
LP#1272074 Physical Characteristics Wizard for the MARC Editor (Part II)

These files should have been in the other commit with the above title,
but I lost them in a rebase effort.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoStamping 0858: Fixed field enhancements
Dan Wells [Tue, 18 Feb 2014 17:01:29 +0000 (12:01 -0500)]
Stamping 0858: Fixed field enhancements

Also, move test file to a possibly better location.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1272074 Release notes (with pictures!) of fixed fields MARC editor enhancements
Lebbeous Fogle-Weekley [Thu, 23 Jan 2014 21:02:02 +0000 (16:02 -0500)]
LP#1272074 Release notes (with pictures!) of fixed fields MARC editor enhancements

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1272074 Fix faulty physical characteristics seed data
Lebbeous Fogle-Weekley [Mon, 18 Nov 2013 17:31:47 +0000 (12:31 -0500)]
LP#1272074 Fix faulty physical characteristics seed data

For 007 (00/a=f), "subfield" e (Level of contraction) starts at position
5, not 4.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1272074 Physical Characteristics Wizard for the MARC Editor
Lebbeous Fogle-Weekley [Tue, 12 Nov 2013 22:51:57 +0000 (17:51 -0500)]
LP#1272074 Physical Characteristics Wizard for the MARC Editor

Right-click in an 007 field to find a new entry in the context menu that
launches this wizard.  The prompts and suggested values come from data
already found in the database.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1272074 Context menus suggesting values for marc fixed field editor
Lebbeous Fogle-Weekley [Mon, 11 Nov 2013 22:52:03 +0000 (17:52 -0500)]
LP#1272074 Context menus suggesting values for marc fixed field editor

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
5 years agoLP#1187035 Remove OpenILS::Utils::Editor part 4.
Bill Erickson [Tue, 18 Feb 2014 13:53:59 +0000 (08:53 -0500)]
LP#1187035 Remove OpenILS::Utils::Editor part 4.

Make sure all CStoreEditors in ClosedDates run updates in transactions,
roll back transactions on error, and commit the transactions on success.

Added a live test for closed data updating.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoLP#1187035 Remove OpenILS::Utils::Editor part 3.
Jeff Godin [Tue, 18 Feb 2014 03:31:28 +0000 (22:31 -0500)]
LP#1187035 Remove OpenILS::Utils::Editor part 3.

Remove obsolete lib/OpenILS/Utils/Editor.pm from MANIFEST.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP#1187035 Remove OpenILS::Utils::Editor part 2.
Bill Erickson [Thu, 6 Jun 2013 13:21:37 +0000 (09:21 -0400)]
LP#1187035 Remove OpenILS::Utils::Editor part 2.

* Address 2 places where we were calling $e->request with a
 CStoreEditor for a storage method.  Since CStoreEditor assumes all
 calls go to open-ils.cstore, these would have failed.

* While we're in a cleaning mood, remove some obsolete commented code.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoLP#1187035 Remove OpenILS::Utils::Editor
Jeff Godin [Sat, 1 Jun 2013 04:35:37 +0000 (00:35 -0400)]
LP#1187035 Remove OpenILS::Utils::Editor

OpenILS::Utils::Editor is obsolete, yet still referenced in a number
of places. Let's remove it.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP#1272575 Use getElementById over querySelector
Jason Etheridge [Fri, 24 Jan 2014 22:51:45 +0000 (17:51 -0500)]
LP#1272575 Use getElementById over querySelector

Favor document.getElementById over document.querySelector for simple
by-id element referencing.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoLP#1184885 ACQ: i18n for search abbreviations
Pasi Kallinen [Tue, 28 May 2013 07:45:02 +0000 (10:45 +0300)]
LP#1184885 ACQ: i18n for search abbreviations

Allow translating the Acq Search dropdown class name abbreviations.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoLP#1187029 release notes typo repair for ingest cleanup
Bill Erickson [Mon, 17 Feb 2014 22:14:37 +0000 (17:14 -0500)]
LP#1187029 release notes typo repair for ingest cleanup

Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP#1187029 Remove unused open-ils.ingest service
Jeff Godin [Tue, 7 May 2013 19:58:51 +0000 (15:58 -0400)]
LP#1187029 Remove unused open-ils.ingest service

Remove open-ils.ingest service and related scripts and code.

In addition to removing OpenILS::Application::Ingest, this commit
removes code that was commented out at the time of open-ils.ingest's
replacement with in-db ingest, example configuration elements, a
use_ok test, and the following obsolete scripts which made use of or
were otherwise related to open-ils.ingest:

* Open-ILS/src/extras/import/direct_ingest.pl
* Open-ILS/src/extras/import/generate-srfsh-indexer.pl
* Open-ILS/src/extras/import/importer.sh

The included release notes recommend removal of the open-ils.ingest service
from configuration files when upgrading, and suggest removal of Ingest.pm from
its location in @INC.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP#1187034 Remove obsolete collections code
Jeff Godin [Sat, 1 Jun 2013 02:47:49 +0000 (22:47 -0400)]
LP#1187034 Remove obsolete collections code

Remove obsolete collections code

Specifically:

open-ils.collections.users_owing_money.retrieve
open-ils.storage.money.collections.users_owing_money

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP1125471 - Use label instead of id in recording in-house use prompt
Ben Shum [Sat, 8 Feb 2014 08:42:07 +0000 (03:42 -0500)]
LP1125471 - Use label instead of id in recording in-house use prompt

When recording multiple in-house use with the library settings for threshold
prompts, the prompt would bring up the ID as the variable instead of the name
of the non-cataloged material. This caused confusion among staff members who
might see a message like: "Are you sure you want to mark 9 as having been used
21 times?" (9 being the id, not the name of the non-cataloged material)

This commit leverages existing code which had been commented out and under
the ID to use the label name for the non-cataloged material instead. Also,
minor bugfix with a missing semi-colon at the end of the function being used.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoStamping 0857 for located uri visibility changes
Jeff Godin [Mon, 17 Feb 2014 17:12:33 +0000 (17:12 +0000)]
Stamping 0857 for located uri visibility changes

Stamping 0857 for located uri visibility changes, also adjusting
upgrade script to use ARRAY_AGG over ARRAY_ACCUM (which recently
landed in master).

LP 1271630 Allow Located URIs to supply copy-like visibility to bibs
https://bugs.launchpad.net/evergreen/+bug/1271630

LP 874296  Replace ARRAY_ACCUM with ARRAY_AGG (and STRING_AGG)
https://bugs.launchpad.net/evergreen/+bug/874296

Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoRelease notes
Mike Rylander [Thu, 23 Jan 2014 15:40:16 +0000 (10:40 -0500)]
Release notes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoTeach evergreen.located_uris() about the new URI visiblity flag
Mike Rylander [Fri, 7 Feb 2014 15:27:11 +0000 (10:27 -0500)]
Teach evergreen.located_uris() about the new URI visiblity flag

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoUpgrade script
Mike Rylander [Wed, 22 Jan 2014 16:09:33 +0000 (11:09 -0500)]
Upgrade script

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoGlobal flag for setting Located URI behavioral mode
Mike Rylander [Wed, 22 Jan 2014 16:06:50 +0000 (11:06 -0500)]
Global flag for setting Located URI behavioral mode

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoCheck behavioral setting for Located URIs
Mike Rylander [Wed, 22 Jan 2014 16:00:24 +0000 (11:00 -0500)]
Check behavioral setting for Located URIs

When the opac.located_uri.act_as_copy Global Flag is enabled, treat
Located URIs like copies for visibility testing purposes.  We use
actor.org_unit_full_path instead of actor.org_unit_descendants so
that we do not lose the desirable "licensed here" modeling that
Located URIs provide.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoevergreen.located_uris() returns a rank, and we should use it
Mike Rylander [Thu, 12 Dec 2013 22:08:17 +0000 (17:08 -0500)]
evergreen.located_uris() returns a rank, and we should use it

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
5 years agoVandelay: increase queued item creation timeout
Bill Erickson [Mon, 30 Dec 2013 18:49:01 +0000 (13:49 -0500)]
Vandelay: increase queued item creation timeout

Allow up to 10 minutes to create each queued vandelay record to avoid
timeouts in item creation caused by pathologicaly long-running record
match set queries.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoKeep standard INNER joins above possible OUTERs
Mike Rylander [Thu, 12 Sep 2013 17:26:21 +0000 (13:26 -0400)]
Keep standard INNER joins above possible OUTERs

We always join metabib.record_attr, and we always use an INNER join
to the core table, so keep that join first.  Likewise with the join
to biblio.record_entry.  Dynamic joins may be OUTER, though, and while
join reordering in Postgres is smart, let's not give it the chance to
fail.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoAssume that future checkins are junk input
Thomas Berezansky [Thu, 21 Jun 2012 15:38:39 +0000 (11:38 -0400)]
Assume that future checkins are junk input

This can happen with SIP2 clients with badly set clocks.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoChange "Alias" to "Holds Alias" in Patron Search.
Chris Sharp [Tue, 26 Nov 2013 17:00:42 +0000 (12:00 -0500)]
Change "Alias" to "Holds Alias" in Patron Search.

This same field is referred to as "OPAC/Staff Client Holds Alias" in
the Register Patron interface.  This change is for consistency in labeling.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoRelease notes for "Update Expire Date" button
Jeff Godin [Thu, 23 Jan 2014 04:40:50 +0000 (23:40 -0500)]
Release notes for "Update Expire Date" button

Add release notes for "Update Expire Date" button in user editor.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoAdd button to update expire date field
Jeff Godin [Wed, 30 Oct 2013 19:42:15 +0000 (15:42 -0400)]
Add button to update expire date field

When updating/renewing a patron (expired or not), it would be
convenient to have a means of populating the expire date field with
a value of perm_interval + today. Currently, staff are required to
manually enter a date, or could toggle the profile from one profile
then back to the desired profile, but this is not ideal.

This commit adds a new button next to the expire date, which when
activated will re-calculate the date based on the current profile's
perm_interval and today's date.

This is similar to how the expire date is populated when creating a
new user, or when changing the profile group. A button is used here
so that the updating of the expire date is an intentional process,
not one that happens upon any edit.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1046026 - Fix duplicate rows in holds pull list
Mike Rylander [Wed, 12 Feb 2014 22:19:55 +0000 (17:19 -0500)]
LP1046026 - Fix duplicate rows in holds pull list

If there are multiple CAPTURE-blocking penalties we could see dupes on the
pull list.  This avoids that.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoPrevent odd TPAC base URL redirect
Dan Wells [Fri, 9 Nov 2012 21:12:58 +0000 (16:12 -0500)]
Prevent odd TPAC base URL redirect

As it stands, in a default install, if you browse to

http://yourserver.com/eg/opac

you are redirected to a login page, and if you login, you then get
to the 404 page. This behavior is caused by the fact that *any*
URLs which do not match a few select cases are assumed to be
"secure" resources, when in fact they might not even exist.

This commit catches any attempt to browse this 'base' and simply
redirects to the "home" page instead.

This addresses the most obvious and likely 404 of this type, but
we might consider catching some other cases (e.g. eg/opac/record/).
In addition (or as an alternative), we could also create a function
call which simply checks the validity of a URL before we ask the
user to login to see it.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoFix some javascript errors, trying to access nonexistent widgets
Pasi Kallinen [Thu, 12 Sep 2013 08:55:36 +0000 (11:55 +0300)]
Fix some javascript errors, trying to access nonexistent widgets

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Melissa Ceraso <mceraso@biblio.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoStamping upgrade for STRING_AGG fix for metabib.staged_browse()
Ben Shum [Thu, 13 Feb 2014 05:05:38 +0000 (00:05 -0500)]
Stamping upgrade for STRING_AGG fix for metabib.staged_browse()

Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoSTRING_AGG() fix for metabib.staged_browse()
Dan Scott [Wed, 12 Feb 2014 19:48:46 +0000 (14:48 -0500)]
STRING_AGG() fix for metabib.staged_browse()

We need to supply TEXT values to STRING_AGG(), so cast the input INTEGER
accordingly.

Also, I LIKE ALL-CAPS.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoRelease notes for WCAG compliance for the TPAC
Dan Scott [Tue, 11 Feb 2014 15:50:38 +0000 (10:50 -0500)]
Release notes for WCAG compliance for the TPAC

Super basic, but gives a pointer to the WCAG overview for
more information.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 add expressive facet link titles
Bill Erickson [Tue, 11 Feb 2014 14:16:09 +0000 (09:16 -0500)]
LP#1268636 add expressive facet link titles

Let the user know exactly what clicking on a facet will do.

Thanks to Dan Scott for the suggestion.

* Note that accessibility validators may dislike the repetitive titles,
  but clearly adding them provides more information (for everyone).
  Plus, as facets pile up, there's no reasonable way to differentiate
  between all titles, anyway, without title attributes becoming too
  long and unreadable.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoRemove useless image-based fines border
Dan Scott [Tue, 11 Feb 2014 03:59:50 +0000 (22:59 -0500)]
Remove useless image-based fines border

The images ended up looking like displaced blocks, but
aren't necessary anyway. If one really wants a border,
use CSS.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoRemove extraneous ] in holds TPAC page
Dan Scott [Tue, 11 Feb 2014 03:54:17 +0000 (22:54 -0500)]
Remove extraneous ] in holds TPAC page

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
5 years agoLP#1268636 Add helpful empty search term message
Bill Erickson [Fri, 17 Jan 2014 14:03:58 +0000 (09:03 -0500)]
LP#1268636 Add helpful empty search term message

When a search is submitted with no query value, instead of silently
redirecting the user the home page, direct the user to the results page
and show a helpful message (within the low-hits template).

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 improve fines warning color contrast
Bill Erickson [Fri, 17 Jan 2014 14:01:38 +0000 (09:01 -0500)]
LP#1268636 improve fines warning color contrast

Use the text_attention CSS color instead of the text_badnews for the my
account fines label, since the badnews color does not contrast highly
engouh with the dark green background for WCAG compliance.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 remove a few invalid attrs / unused tags
Bill Erickson [Fri, 17 Jan 2014 14:00:24 +0000 (09:00 -0500)]
LP#1268636 remove a few invalid attrs / unused tags

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 additional myopac nav headers
Bill Erickson [Wed, 15 Jan 2014 18:58:52 +0000 (13:58 -0500)]
LP#1268636 additional myopac nav headers

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 TPAC avoid <b> tags in pref lib msg
Bill Erickson [Wed, 15 Jan 2014 16:46:28 +0000 (11:46 -0500)]
LP#1268636 TPAC avoid <b> tags in pref lib msg

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 TPAC more nav headers for search results
Bill Erickson [Wed, 15 Jan 2014 16:42:42 +0000 (11:42 -0500)]
LP#1268636 TPAC more nav headers for search results

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 TPAC initial navigation headers
Bill Erickson [Wed, 15 Jan 2014 15:44:44 +0000 (10:44 -0500)]
LP#1268636 TPAC initial navigation headers

Added a screen-reader only CSS class ("sr-only") for adding content
which should only be read by screen readers and is otherwise invisible.

Added hidden generic <h1> and page-specific <h2> entries to improve
web accessibility navigation.

Additional content-specific headers (h3 and down) are recommended for
content grouping, but not included in this commit.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 My account various repairs
Bill Erickson [Wed, 8 Jan 2014 21:29:15 +0000 (16:29 -0500)]
LP#1268636 My account various repairs

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 avoid empty <ul>'s in browse
Bill Erickson [Mon, 30 Dec 2013 21:14:19 +0000 (16:14 -0500)]
LP#1268636 avoid empty <ul>'s in browse

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 advanced search repairs
Bill Erickson [Mon, 30 Dec 2013 20:36:53 +0000 (15:36 -0500)]
LP#1268636 advanced search repairs

* avoid dupe IDs
* removes extraneous <div>'s
* clean up attrs w/ preceding spaces

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 alt tags and cleanup continued
Bill Erickson [Mon, 23 Dec 2013 16:39:50 +0000 (11:39 -0500)]
LP#1268636 alt tags and cleanup continued

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 more expressive <a> titles in search results
Bill Erickson [Fri, 20 Dec 2013 16:42:06 +0000 (11:42 -0500)]
LP#1268636 more expressive <a> titles in search results

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 HTML validation repairs
Bill Erickson [Fri, 20 Dec 2013 16:13:48 +0000 (11:13 -0500)]
LP#1268636 HTML validation repairs

remove invalid span@nowrap attribute

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 additional label repairs
Bill Erickson [Fri, 20 Dec 2013 16:13:32 +0000 (11:13 -0500)]
LP#1268636 additional label repairs

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 HTML table attributes validation repairs
Bill Erickson [Fri, 20 Dec 2013 16:12:30 +0000 (11:12 -0500)]
LP#1268636 HTML table attributes validation repairs

Replace old-school inline cellpadding, cellspacing, border attributes
with CSS.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 facets get more specific more/less titles
Bill Erickson [Fri, 20 Dec 2013 16:07:01 +0000 (11:07 -0500)]
LP#1268636 facets get more specific more/less titles

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoLP#1268636 home page label / alt repairs
Bill Erickson [Thu, 19 Dec 2013 17:57:42 +0000 (12:57 -0500)]
LP#1268636 home page label / alt repairs

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoInclude calculated 0-prox locations in the stalling interval for op capture
Mike Rylander [Fri, 7 Feb 2014 21:00:01 +0000 (16:00 -0500)]
Include calculated 0-prox locations in the stalling interval for op capture

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoUse copy owning library as the context for finding best hold sort order setting
Mike Rylander [Tue, 21 Jan 2014 17:31:13 +0000 (12:31 -0500)]
Use copy owning library as the context for finding best hold sort order setting

In the olden days before best hold sort order and proximity adjustment, there was
no need to consider any context org other than "here", because the choices were,
essentially, FIFO or Traditional applied within the hard-boundary range.  However,
now we need to decided whose rule to follow, and the most correct arbiter of that
is the owning library of the call number of the copy.  We avoid copy circ lib
because that can change with floating copies.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoFix copy_info variables one last time for library_name_link purposes
Ben Shum [Sat, 8 Feb 2014 16:14:23 +0000 (11:14 -0500)]
Fix copy_info variables one last time for library_name_link purposes

In cd056eba75038c6a1fabd2a83ba97d81a444bc75, I fixed record by inadvertently
passing around the wrong variables. In fact, we do not need the value set
there, and we broke results view as a result of the swap around.

Put things right what once went wrong.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoAddress some remaining hardcoded install prefixes
Dan Scott [Tue, 26 Nov 2013 17:44:51 +0000 (12:44 -0500)]
Address some remaining hardcoded install prefixes

Ran a clean install of Evergreen on Ubuntu Precise and most things were
more or less working using simple "./configure; make; make install" with
the major exception of the TPAC. It turned out that there is a simple
variable that can be tweaked in the Apache config; a better way to
handle this might be to preprocess the source file at make time, but for
now at least we set the variable.

In addition, clean up two remaining scripts that have hardcoded paths.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoLP1155769: Items repeated in tpac display, others not visible
Kyle Tomita [Thu, 6 Feb 2014 00:23:18 +0000 (16:23 -0800)]
LP1155769: Items repeated in tpac display, others not visible

This was an issue with the query and ordering by a column that was
sometimes null (copy_number).  Added barcode to be a sort rather than
replacing copy_number, per bshum's suggestion.  Not replacing allows
libraries that use copy_number to continue to use them as well.

Signed-off-by: Kyle Tomita <tomitakyle@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoSign off on upgrade script for (STRING|ARRAY)_AGG user/dbs/test_array_aggravate
Dan Scott [Fri, 7 Feb 2014 23:42:41 +0000 (18:42 -0500)]
Sign off on upgrade script for (STRING|ARRAY)_AGG

Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoTweak STRING_AGG() arguments (expects TEXT or BYTEA)
Dan Scott [Fri, 7 Feb 2014 23:12:10 +0000 (18:12 -0500)]
Tweak STRING_AGG() arguments (expects TEXT or BYTEA)

Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoAdd upgrade script for changeover to array_agg() and string_agg()
Ben Shum [Fri, 7 Feb 2014 11:34:00 +0000 (06:34 -0500)]
Add upgrade script for changeover to array_agg() and string_agg()

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoFound a few last functions that need changing to native SQL
Ben Shum [Fri, 7 Feb 2014 06:18:08 +0000 (01:18 -0500)]
Found a few last functions that need changing to native SQL

These new uses probably went in more recently as authority fixes. Updated them to
use the native functions as well.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoKeep dropping and creating array_accum()
Dan Scott [Fri, 17 Jan 2014 01:59:13 +0000 (20:59 -0500)]
Keep dropping and creating array_accum()

We want to keep array_accum() around for now to support any custom SQL that
sites might have generated. Plus, we don't want it to show up in our search
path ahead of the native array_agg()!

We can always rebase this as a fix into the previous commit to squash history a
bit. "Nope, that never happened!"

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoMore native SQL functions
Ben Shum [Fri, 18 May 2012 04:27:24 +0000 (00:27 -0400)]
More native SQL functions

Found four more places that this needed to be changed.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
5 years agoPrevent {NULL} values from blocking bib saving
Dan Scott [Tue, 3 Jan 2012 16:53:49 +0000 (11:53 -0500)]
Prevent {NULL} values from blocking bib saving

With both the old ARRAY_ACCUM and ARRAY_AGG, and with array_nulls on,
PostgreSQL 9.0 on Debian Squeeze was generating values of '{NULL}'
rather than actual nulls. This would in turn prevent bibs without ISBNs
or ISSNs from being saved successfully. A CASE statement protects
against that problem and returns a clean NULL.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoARRAY_ACCUM() -> ARRAY_AGG() for new authority nfi functions
Dan Scott [Sun, 16 Oct 2011 14:26:00 +0000 (10:26 -0400)]
ARRAY_ACCUM() -> ARRAY_AGG() for new authority nfi functions

Fix the new places where array_accum() has been able to sneak into the
schema.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoTeach asset.merge_record_assets about STRING_AGG()
Dan Scott [Thu, 13 Oct 2011 22:56:26 +0000 (18:56 -0400)]
Teach asset.merge_record_assets about STRING_AGG()

Now that asset.merge_record_assets() is working, cut over to
STRING_AGG() so it can iterate over those unnecessary nodes faster :)

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoOne more STRING_AGG() conversion
Dan Scott [Thu, 13 Oct 2011 14:45:25 +0000 (10:45 -0400)]
One more STRING_AGG() conversion

Teach biblio.indexing_ingest_or_delete() to use STRING_AGG() where
appropriate.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
5 years agoNative SQL functions for Vandelay
Dan Scott [Wed, 12 Oct 2011 18:20:46 +0000 (14:20 -0400)]
Native SQL functions for Vandelay

Use STRING_AGG() where appropriate instead of
ARRAY_TO_STRING(ARRAY_ACCUM()), and ARRAY_AGG() instead of
ARRAY_ACCUM().

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