working/Evergreen.git
10 years agoLP1272316 - Followup to make ou_ancestor_setting() even faster
Lebbeous Fogle-Weekley [Fri, 24 Jan 2014 17:33:13 +0000 (12:33 -0500)]
LP1272316 - Followup to make ou_ancestor_setting() even faster

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
10 years agoLP1272316 - Speed up these settings lookups in the hold targeter that get repeated...
Lebbeous Fogle-Weekley [Fri, 24 Jan 2014 17:24:06 +0000 (12:24 -0500)]
LP1272316 - Speed up these settings lookups in the hold targeter that get repeated a ...

... lot when there are lots of copies for a hold.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
10 years agoLP#1179660: remove call to undefined initialize func
Bill Erickson [Thu, 6 Jun 2013 15:13:35 +0000 (11:13 -0400)]
LP#1179660: remove call to undefined initialize func

Remove call to nonexistant function Search::Z3950->initialize.  Prior to
now, this would have quietly failed, but with AUTOLOAD to be removed
from OpenSRF, it would fail with full shock and awe.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Conflicts:
Open-ILS/src/perlmods/lib/OpenILS/Application/Search.pm

10 years agoTranslation updates - newpot
Dan Wells [Mon, 24 Feb 2014 21:31:16 +0000 (16:31 -0500)]
Translation updates - newpot

Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoTranslation updates - po files
Dan Wells [Mon, 24 Feb 2014 21:21:32 +0000 (16:21 -0500)]
Translation updates - po files

Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoStamping 0868 - 'behind_desk' fixes
Dan Wells [Fri, 21 Feb 2014 21:34:58 +0000 (16:34 -0500)]
Stamping 0868 - 'behind_desk' fixes

Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1281744 Aged hold purging column repair
Bill Erickson [Tue, 18 Feb 2014 19:16:40 +0000 (14:16 -0500)]
LP#1281744 Aged hold purging column repair

Add missing non-NULLable "behind_desk" column to
action.all_hold_request, which is used during holds deletion and
archiving.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoStamping 0864-0867 for MVF, CRA, and TPAC MRs
Dan Wells [Fri, 21 Feb 2014 20:58:50 +0000 (15:58 -0500)]
Stamping 0864-0867 for MVF, CRA, and TPAC MRs

That is, Multi-valued Fields, Composite Record Attibutes, and TPAC
Metarecord support.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 Prevent display non-opac-visible icons / hold formats
Bill Erickson [Fri, 21 Feb 2014 18:48:07 +0000 (13:48 -0500)]
LP#1053397 Prevent display non-opac-visible icons / hold formats

Avoid showing coded value maps for icons, hold formats, and hold
languages where the coded value's opac_visible value is FALSE.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 icon / metarcord format additions
Bill Erickson [Fri, 21 Feb 2014 17:19:14 +0000 (12:19 -0500)]
LP#1053397 icon / metarcord format additions

 * Adds a new blu-ray format for icon and metarecord holds

 * Remove large-print items from the generic "book" attribute for icons
   and holds.

   For icons, this means we will no longer see two icons displayed for a
   single large-print book.

   For holds, this means that to receive a large-print book, one has to
   select the large-print book format.  "book" alone will not result in
   a large-print item being targted.

   Note that when building a data set for the format selector drop-down,
   it might make sense to keep large-print items in the generic "book"
   format.  That'll come later.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 MR list return to grouped results
Bill Erickson [Fri, 21 Feb 2014 15:19:00 +0000 (10:19 -0500)]
LP#1053397 MR list return to grouped results

Show a "Return to Grouped Search Results" link from the metarecord
constituent records page.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 staff client MR results paging repair
Bill Erickson [Thu, 20 Feb 2014 20:05:11 +0000 (15:05 -0500)]
LP#1053397 staff client MR results paging repair

When selecting a record from the list of metarecord constituents, the
paging controls (start/previous/next/end) within the staff client should
page through the constiuents, not the original search.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 MR holds displays selected formats
Bill Erickson [Thu, 20 Feb 2014 19:48:53 +0000 (14:48 -0500)]
LP#1053397 MR holds displays selected formats

In a patron's holds list, only show formats in the format column
matching the patron's selected hold formats.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397: Use the new data structures for looking up language indexing configuration
Mike Rylander [Wed, 19 Feb 2014 22:11:29 +0000 (17:11 -0500)]
LP#1053397: Use the new data structures for looking up language indexing configuration

Also, from Dan Wells:

First, we don't want to fully exclude records which don't have a
metabib.record_attr_vector_list entry, so we do a LEFT JOIN instead
for that table.  Otherwise, some records error out when ingesting
(see placeholder record -1 in the stock data set).

Second, let's add a check for 'active' which appears to have been
always missing.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397: Correct operator thinko on CRA sorters
Mike Rylander [Wed, 19 Feb 2014 18:06:32 +0000 (13:06 -0500)]
LP#1053397: Correct operator thinko on CRA sorters

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP1053397: Don't leak memory; Cache compiled ccraed values
Mike Rylander [Tue, 18 Feb 2014 21:53:53 +0000 (16:53 -0500)]
LP1053397: Don't leak memory; Cache compiled ccraed values

We were leaking memory in a PLPGSQL function that compiles the
query_int from a ccraed value.  Stop doing that!

Also, implement a self-invalidating (upon table update) cache
for compiled composite attr defs.  This brings concerto reingest
down from 50+ seconds to under 10.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 catch-all 'music' icon_format attribute value
Bill Erickson [Mon, 17 Feb 2014 20:08:11 +0000 (15:08 -0500)]
LP#1053397 catch-all 'music' icon_format attribute value

Many records in the Evergreen sample data have item_type=j and no sound
recording format.  This seems likely to happen in the wild, as well.
The new coded value captures everying with item_type=j and no sr_format.

Also included is a "music.png" icon, which looks like a pair of happy
eigth notes.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1269911: Cast bigint to int
Mike Rylander [Mon, 17 Feb 2014 19:03:02 +0000 (14:03 -0500)]
LP#1269911: Cast bigint to int

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 filter MR icons/formats repair
Bill Erickson [Mon, 17 Feb 2014 14:24:40 +0000 (09:24 -0500)]
LP#1053397 filter MR icons/formats repair

Only limit the scope of the MR attributes in the presence of a hard hold
boundary when searching for which attributes to display in the hold
placement form.

In other words, don't limit the attributes based on search parameters,
since searching at Branch 1 does not necesssarily meany you only want to
place holds on formats available at branch 1.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 filter MR icons/formats by org scope
Bill Erickson [Fri, 14 Feb 2014 22:25:44 +0000 (17:25 -0500)]
LP#1053397 filter MR icons/formats by org scope

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397: Add optional org filter to "has holdable copies", and use that in open...
Mike Rylander [Fri, 14 Feb 2014 21:06:59 +0000 (16:06 -0500)]
LP#1053397: Add optional org filter to "has holdable copies", and use that in open-ils.circ.holds.metarecord.filterd_records

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 apply org scope to metarecord attributes
Bill Erickson [Fri, 14 Feb 2014 19:34:02 +0000 (14:34 -0500)]
LP#1053397 apply org scope to metarecord attributes

When loading record attributes (cra, ccvm, etc.) for constituent
records, limit the attributes to those contained by records which have
holdings within the provided (search) scope.

With this, for example, a search at Branch 1 for metarecords will only
show format icons for constituent records that have holdings at BR1.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 repair one-hit redirect logic for metarecords
Bill Erickson [Fri, 14 Feb 2014 17:23:02 +0000 (12:23 -0500)]
LP#1053397 repair one-hit redirect logic for metarecords

* Only perform the single-hit redirect if there is only one metarecord
  search result and the MR only has a single constituent record.

* Repair the record id logic so the redirect jumps to the correct
  record.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1269911 global flag for opac format selector attribute
Bill Erickson [Thu, 13 Feb 2014 21:28:01 +0000 (16:28 -0500)]
LP#1269911 global flag for opac format selector attribute

Adds a new config.global_flag for defining which record attribute the
OPAC will use to find formats for the format selector.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1269911 seed data SQL repairs
Bill Erickson [Thu, 13 Feb 2014 20:28:39 +0000 (15:28 -0500)]
LP#1269911 seed data SQL repairs

Products of merge conflict resolution with the mvf-cra branch.

* repaired syntax error
* removed some duplicate global flag entries

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1269911 'large print book' is also a 'book'
Bill Erickson [Tue, 11 Feb 2014 15:33:01 +0000 (10:33 -0500)]
LP#1269911 'large print book' is also a 'book'

Remove the item_form != d component of the "book" composite definition.
I think this more closely matches how humans would interpret it.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Conflicts:
Open-ILS/src/sql/Pg/950.data.seed-values.sql

Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 TPAC Metarecords release notes
Bill Erickson [Mon, 10 Feb 2014 19:01:05 +0000 (14:01 -0500)]
LP#1053397 TPAC Metarecords release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 TPAC metarecord search and holds UI
Bill Erickson [Mon, 10 Feb 2014 19:01:47 +0000 (14:01 -0500)]
LP#1053397 TPAC metarecord search and holds UI

API, TPAC backend, and UI bits for TPAC metarecord searching and holds.

* Group Formats and Editions options in advanced search / searchbar
* MR holds placement form, allowing selected formats and languages
* MR holds targeting updated to work w/ new holdable formats composite
  definitions

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 DB metarecord seed data
Bill Erickson [Mon, 10 Feb 2014 19:00:21 +0000 (14:00 -0500)]
LP#1053397 DB metarecord seed data

Seed data for representing the holdable formats for metarecords.  This
is a subset of the "icon_format" collection, excluding the electronic
resources.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 DB for metarecords unapi and holds
Mike Rylander [Mon, 10 Feb 2014 18:59:23 +0000 (13:59 -0500)]
LP#1053397 DB for metarecords unapi and holds

Schema for unapi metarecord access (unap.mmr()) and associated
components.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 years agoLP#1053397 IDL class mraf for metabib::record_attr_flat
Bill Erickson [Mon, 10 Feb 2014 18:54:43 +0000 (13:54 -0500)]
LP#1053397 IDL class mraf for metabib::record_attr_flat

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>
10 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>