working/Evergreen.git
11 years agoLP#1053397 MR holds filter display user/berick/lp1053397-tpac-metarecords-plus-composite
Bill Erickson [Thu, 30 Jan 2014 17:16:27 +0000 (12:16 -0500)]
LP#1053397 MR holds filter display

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 MR holds available formats; initial extraction
Bill Erickson [Wed, 29 Jan 2014 22:42:15 +0000 (17:42 -0500)]
LP#1053397 MR holds available formats; initial extraction

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 global flag for MR holds format attr
Bill Erickson [Wed, 29 Jan 2014 22:41:48 +0000 (17:41 -0500)]
LP#1053397 global flag for MR holds format attr

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 metabib.record_attr_flat IDL class
Bill Erickson [Wed, 29 Jan 2014 22:41:22 +0000 (17:41 -0500)]
LP#1053397 metabib.record_attr_flat IDL class

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoMerge branch 'lp1053397-tpac-metarecords' into lp1053397-tpac-metarecords-plus-composite
Bill Erickson [Wed, 29 Jan 2014 20:56:08 +0000 (15:56 -0500)]
Merge branch 'lp1053397-tpac-metarecords' into lp1053397-tpac-metarecords-plus-composite

11 years agoLP#1053397 more MR display / filter bits
Bill Erickson [Tue, 28 Jan 2014 20:13:00 +0000 (15:13 -0500)]
LP#1053397 more MR display / filter bits

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 basic MR holds support; todo: formats
Bill Erickson [Tue, 28 Jan 2014 20:12:39 +0000 (15:12 -0500)]
LP#1053397 basic MR holds support; todo: formats

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 MR search and results display
Bill Erickson [Tue, 21 Jan 2014 13:55:30 +0000 (08:55 -0500)]
LP#1053397 MR search and results display

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 support unapi.mmr retrieval from tpac
Bill Erickson [Mon, 20 Jan 2014 20:54:35 +0000 (15:54 -0500)]
LP#1053397 support unapi.mmr retrieval from tpac

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoRevert "LP#1053397 initial metarecord detail page"
Bill Erickson [Mon, 20 Jan 2014 20:46:04 +0000 (15:46 -0500)]
Revert "LP#1053397 initial metarecord detail page"

Rolling back MR detail page for now

This reverts commit a594b9062d512a4309f48caa8c9a1012e67258c1.

11 years agoRevert "LP#1053397 remove deprecated AC key lookup"
Bill Erickson [Mon, 20 Jan 2014 20:45:47 +0000 (15:45 -0500)]
Revert "LP#1053397 remove deprecated AC key lookup"

Rolling back MR detail page for now

This reverts commit 5bf50a33a02e3758ea6e2483f8dccdcc2f4dbb41.

11 years agoRevert "LP#1053397 MR detail page additions"
Bill Erickson [Mon, 20 Jan 2014 20:44:07 +0000 (15:44 -0500)]
Revert "LP#1053397 MR detail page additions"

Rolling back MR detail page for now..

This reverts commit 3bae24efbce8663df574aeea43b96b67a8f41fb1.

11 years agoLP#1053397 MR detail page additions
Bill Erickson [Mon, 20 Jan 2014 20:42:38 +0000 (15:42 -0500)]
LP#1053397 MR detail page additions

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 remove deprecated AC key lookup
Bill Erickson [Mon, 20 Jan 2014 20:06:58 +0000 (15:06 -0500)]
LP#1053397 remove deprecated AC key lookup

Remove the extra, unnecessary DB call to find the record's added content
key, since the lookups are now based on the record ID instead of the
ISBN, etc.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 initial metarecord detail page
Bill Erickson [Mon, 20 Jan 2014 17:15:31 +0000 (12:15 -0500)]
LP#1053397 initial metarecord detail page

* support for MR-focused copy query
* MR-focused hold / copy summary counts

Still much to do

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 unapi.mmr() gets new slimit->bre limit
Bill Erickson [Mon, 20 Jan 2014 15:21:30 +0000 (10:21 -0500)]
LP#1053397 unapi.mmr() gets new slimit->bre limit

Support limiting the number of constituent records to flesh into a
metarecord.  This carries particular weight when fleshing holdings,
since a large number of constituent records could produce very large
documents.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 unapi.mmr() repairs
Bill Erickson [Fri, 17 Jan 2014 19:55:14 +0000 (14:55 -0500)]
LP#1053397 unapi.mmr() repairs

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1053397 initial unapi.mmr() support
Bill Erickson [Fri, 17 Jan 2014 19:36:36 +0000 (14:36 -0500)]
LP#1053397 initial unapi.mmr() support

Signed-off-by: Bill Erickson <berick@esilibrary.com>
11 years agoLP#1269911 composite attributes admin UI user/berick/composite-record-attributes
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>
11 years agoTeach unapi about composite attributes
Mike Rylander [Wed, 22 Jan 2014 14:46:44 +0000 (09:46 -0500)]
Teach unapi about composite attributes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoNeed to protect against null values for sorters
Mike Rylander [Tue, 21 Jan 2014 18:29:43 +0000 (13:29 -0500)]
Need to protect against null values for sorters

Signed-off-by: Mike Rylander <miker@esilibrary.com>
11 years agoProvisional upgrade script for composite attributes
Mike Rylander [Tue, 21 Jan 2014 17:52:34 +0000 (12:52 -0500)]
Provisional upgrade script for composite attributes

Various baseline fixes including syntax repairs, use of
JSON::XS for debian squeez support, correction of plperlu
SPI usage.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoInform the IDL and confiy of composite attributes
Mike Rylander [Tue, 21 Jan 2014 16:24:52 +0000 (11:24 -0500)]
Inform the IDL and confiy of composite attributes

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>
11 years agoSchema elements and ingest logic for composite attributes
Mike Rylander [Mon, 20 Jan 2014 22:24:10 +0000 (17:24 -0500)]
Schema elements and ingest logic for composite attributes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoTeach unapi about multi-valued attributes user/miker/multi-value-record-attrs-rebased
Mike Rylander [Wed, 22 Jan 2014 14:44:28 +0000 (09:44 -0500)]
Teach unapi about multi-valued attributes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoNeed to distinguish between controlled and uncontrolled attributes when finding value IDs
Mike Rylander [Fri, 17 Jan 2014 23:55:26 +0000 (18:55 -0500)]
Need to distinguish between controlled and uncontrolled attributes when finding value IDs

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoFix constructed method call syntax and a logic inversion
Mike Rylander [Fri, 17 Jan 2014 22:32:01 +0000 (17:32 -0500)]
Fix constructed method call syntax and a logic inversion

Signed-off-by: Mike Rylander <miker@esilibrary.com>
11 years agoPerferred language query fix
Mike Rylander [Fri, 17 Jan 2014 22:09:00 +0000 (17:09 -0500)]
Perferred language query fix

Signed-off-by: Mike Rylander <miker@esilibrary.com>
11 years agoMake extra sure there is no empty data
Mike Rylander [Fri, 17 Jan 2014 21:16:23 +0000 (16:16 -0500)]
Make extra sure there is no empty data

Signed-off-by: Mike Rylander <miker@esilibrary.com>
11 years agoSchema bug fixes from testing
Mike Rylander [Thu, 16 Jan 2014 22:32:01 +0000 (17:32 -0500)]
Schema bug fixes from testing

Signed-off-by: Mike Rylander <miker@esilibrary.com>
11 years agoTeach the upgrade script to convert old data
Mike Rylander [Wed, 15 Jan 2014 22:22:27 +0000 (17:22 -0500)]
Teach the upgrade script to convert old data

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoProvisional upgrade script for MVF
Mike Rylander [Wed, 15 Jan 2014 21:48:13 +0000 (16:48 -0500)]
Provisional upgrade script for MVF

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoAlways replace sorter values
Mike Rylander [Wed, 15 Jan 2014 21:47:47 +0000 (16:47 -0500)]
Always replace sorter values

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoAdd a useful index
Mike Rylander [Wed, 15 Jan 2014 21:01:36 +0000 (16:01 -0500)]
Add a useful index

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoTeach QueryParser new tricks
Mike Rylander [Wed, 15 Jan 2014 21:00:52 +0000 (16:00 -0500)]
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>
11 years agoTeach the IDL about MVF-related structures
Mike Rylander [Wed, 15 Jan 2014 18:17:39 +0000 (13:17 -0500)]
Teach the IDL about MVF-related structures

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoNew intarray-focused attribute extraction
Mike Rylander [Wed, 15 Jan 2014 17:07:59 +0000 (12:07 -0500)]
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.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoMove current record attr logic into its own function
Mike Rylander [Tue, 14 Jan 2014 22:26:41 +0000 (17:26 -0500)]
Move current record attr logic into its own function

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoAdd a multi flag for record attrs
Mike Rylander [Tue, 14 Jan 2014 21:58:33 +0000 (16:58 -0500)]
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).

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoHidy hole in which to stick "uncontrolled" values
Mike Rylander [Tue, 14 Jan 2014 21:36:51 +0000 (16:36 -0500)]
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.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoAdd intarray extension
Mike Rylander [Tue, 14 Jan 2014 21:30:17 +0000 (16:30 -0500)]
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.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoTeach vandelay.marc21_physical_characteristics() to see all 007's
Mike Rylander [Tue, 14 Jan 2014 21:28:04 +0000 (16:28 -0500)]
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.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoInclude RFID docs with full path
Dan Scott [Mon, 27 Jan 2014 15:50:31 +0000 (10:50 -0500)]
Include RFID docs with full path

Ben Shum noticed that the RFID docs weren't showing up in the documentation; we
need to include the full relative path to the RFID docs.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoFix copy_info variables for result and record view
Ben Shum [Sat, 25 Jan 2014 04:56:45 +0000 (23:56 -0500)]
Fix copy_info variables for result and record view

Because we yanked out the code that generates the link into a separate INCLUDE
file, the function was looking for something for copy_info. The one for result
was missing entirely and the one for record was backwards.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoKPAC library page: give the kids some style
Dan Scott [Thu, 23 Jan 2014 18:51:30 +0000 (13:51 -0500)]
KPAC library page: give the kids some style

Just the bare minimum: some padding around the body, and a font colour and size
that's reasonably consistent with the rest of the look of the KPAC for h2 and
h3 elements.

Yes, I know there is text-transform:uppercase and h2 is sized at 48px but that
seems to be used for "You saved it!" and "Get it!" banner things. On the
library info page, we're using headings for headings.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoClean up the breadcrumb trail in the KPAC
Dan Scott [Thu, 23 Jan 2014 17:10:50 +0000 (12:10 -0500)]
Clean up the breadcrumb trail in the KPAC

Links to the library pages don't maintain GET context, so we can't feed search
or "Get It" links in the breadcrumb trail, currently. We can revisit this,
of course.

Wasn't there some fairy tale about kids and a breadcrumb trail... once upon a
time?

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoKPAC root, OPAC root: we all live under one root
Dan Scott [Thu, 23 Jan 2014 17:05:20 +0000 (12:05 -0500)]
KPAC root, OPAC root: we all live under one root

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoBegin enabling KPAC-branded library info page
Dan Scott [Thu, 23 Jan 2014 16:41:52 +0000 (11:41 -0500)]
Begin enabling KPAC-branded library info page

This needs work and is going to get squashed like a bug when we're through.

Yeesh.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoKPAC: Won't somebody think of the children's record details?
Dan Scott [Thu, 23 Jan 2014 14:10:59 +0000 (09:10 -0500)]
KPAC: Won't somebody think of the children's record details?

Factor out the library name link logic into a separate template that can be
included by TPAC search results, TPAC record details, and KPAC record details.

Notice along the way that the KPAC is devoid of copy-level structured data,
but save that for later.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoTPAC: Link library in results page to library page
Dan Scott [Wed, 22 Jan 2014 15:12:37 +0000 (10:12 -0500)]
TPAC: Link library in results page to library page

Dan Wells noticed that the links on results pages went to a different location
(potentially, depending on the "prefer external library uri" OUS) than the
links on record pages. Make things consistent.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoForward port 2.5.2 upgrade script
Dan Wells [Thu, 23 Jan 2014 15:04:01 +0000 (10:04 -0500)]
Forward port 2.5.2 upgrade script

Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoTranslation updates - newpot
Dan Wells [Wed, 22 Jan 2014 21:40:36 +0000 (16:40 -0500)]
Translation updates - newpot

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

Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoStamping 0854: data.min_max_prices
Jeff Godin [Wed, 22 Jan 2014 14:56:34 +0000 (09:56 -0500)]
Stamping 0854: data.min_max_prices

Stamping 0854 and resolving permission ID conflicts due to drift.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
11 years agoRelease notes for lp1207903: new lost billing min/max setting
Remington Steed [Tue, 24 Sep 2013 20:54:37 +0000 (16:54 -0400)]
Release notes for lp1207903: new lost billing min/max setting

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
11 years agoAdd new option for max/min lost item pricing
Dan Wells [Fri, 14 Dec 2012 19:02:22 +0000 (14:02 -0500)]
Add new option for max/min lost item pricing

In addition to a 'default' price when price is missing or zero,
we can also accommodate a range of prices by saying it should be
at least 'X' and not more than 'Y'.  This also allows you to
effectively set a fixed price for all lost items by setting min
and max to an equal amount.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
11 years agoLP#842991 Reports needs to error when deleting fails
Remington Steed [Wed, 27 Nov 2013 14:55:35 +0000 (09:55 -0500)]
LP#842991 Reports needs to error when deleting fails

When attempting to delete a report template, the reports interface
incorrectly shows "Action Succeeded" even when it partly fails. If the
user performing the delete does not own all the dependent reports and
outputs, then the perl function returns 1 to indicate that some were
deleted, but not all. However, the javascript that calls that function
does not check for a return value of 1. This commit adds that check, and
also improves the formatting of the related error messages.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoSerials: improve routing slips per Dan Wells' suggestions on LP #1229349
Lebbeous Fogle-Weekley [Mon, 28 Oct 2013 18:28:37 +0000 (14:28 -0400)]
Serials: improve routing slips per Dan Wells' suggestions on LP #1229349

  - Don't repeat the same address for the same user
  - Label mailing vs. billing
  - Border to separate mailing and billing addresses
  - [Also] move some inline styles to a CSS file

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
11 years agoStamping 0853: 'Prefer external URL' OUS
Dan Wells [Tue, 21 Jan 2014 20:07:29 +0000 (15:07 -0500)]
Stamping 0853: 'Prefer external URL' OUS

Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoRelease notes for the TPAC library web pages
Dan Scott [Wed, 15 Jan 2014 03:12:16 +0000 (22:12 -0500)]
Release notes for the TPAC library web pages

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoAdd upgrade script for lib.prefer_external_url OUS
Dan Scott [Wed, 15 Jan 2014 02:33:34 +0000 (21:33 -0500)]
Add upgrade script for lib.prefer_external_url OUS

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoCopy details link to Evergreen library page by default
Dan Scott [Mon, 6 Jan 2014 19:33:04 +0000 (14:33 -0500)]
Copy details link to Evergreen library page by default

Add a new library setting, 'lib.prefer_external_url', to force library names in
copy details pages to link to their associated 'lib.info_url' setting rather
than the Evergreen-generated page. In the absence of a 'lib.info_url' setting,
the name will fall back to being linked to the Evergreen-generated page.

Per discussion with Ben Shum and Kathy Lussier.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoImprove label for library's external web site
Dan Scott [Mon, 6 Jan 2014 18:59:50 +0000 (13:59 -0500)]
Improve label for library's external web site

Normal humans will find "Library web site" more meaningful than "External web
site"; thanks to Kathy Lussier for the suggestion!

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years ago%l instead of %H if we're using AM/PM for default time formats
Dan Scott [Mon, 6 Jan 2014 18:19:17 +0000 (13:19 -0500)]
%l instead of %H if we're using AM/PM for default time formats

Thanks again to the indefatiguable Ben Shum for this catch!

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoUse the 'format.time' OUS to format library hours
Dan Scott [Mon, 6 Jan 2014 17:22:28 +0000 (12:22 -0500)]
Use the 'format.time' OUS to format library hours

Sparked by a concern that Ben Shum had over the display of library hours in 24
hour format, I eventually figured out that we could use the Template::Toolkit
Date module to format the times according to library preferences. And given
that we already have a format.time OUS, let's use it.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoTPAC Library schema info - add some caching
Dan Scott [Mon, 28 Oct 2013 15:26:55 +0000 (11:26 -0400)]
TPAC Library schema info - add some caching

Rather than hitting the database every time, cache our requests for a
period of time. It's unlikely that hours of operation or addresses are
going to change very often...

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoLink from copies to library info page
Dan Scott [Tue, 17 Dec 2013 21:29:35 +0000 (16:29 -0500)]
Link from copies to library info page

In the absence of a specific lib.info_url org unit setting, link to the library
info page.

If we _do_ have a lib.info_url org unit setting, link from the library info
page to to the external web site.

Rather than wrapping everything in the table cell as the seller, focus
on the <a> and give it an explicit Library typeof attribute; then we can
offer up the name of the library as the name attribute, should the
crawler be too lazy to follow the link.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoFirst inklings of schema.org support for library pages
Dan Scott [Sat, 26 Oct 2013 21:32:22 +0000 (17:32 -0400)]
First inklings of schema.org support for library pages

Adds a TPAC page where the information for a given library can be publicly
exposed; in addition, that information is marked up with schema.org structured
data so that, for example, a search engine can offer up the hours of operation
and contact information for a given branch right on the search results page.

We give the content-wrapper a main-content for indentation, to be consistent
with other pages in the TPAC.

We also add the cargo-cult common-full-pad div for a bottom margin.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoFixed title/author display at checkout for non-pre-cat items.
Steven Callender [Thu, 10 Oct 2013 20:09:06 +0000 (16:09 -0400)]
Fixed title/author display at checkout for non-pre-cat items.

Fixed a display problem on checkout where items that were formely pre-cats
were still displaying the pre-cat data. Now it will make sure the item is
still a pre-cat before using the dummy data.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoLP969312: No warning for Delete All from Catalog in Copy Buckets
Pasi Kallinen [Tue, 28 May 2013 17:18:06 +0000 (20:18 +0300)]
LP969312: No warning for Delete All from Catalog in Copy Buckets

Add a confirmation dialog popup.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoTPAC: Display authors using inline-block
Dan Scott [Thu, 16 Jan 2014 03:33:25 +0000 (22:33 -0500)]
TPAC: Display authors using inline-block

Rather than letting author credits wrap willy-nilly, use inline-block mode so
that each line will begin with a new author. Devices with constrained screens
in particular benefit from this, as the list of authors is much easier to scan,
and wider screens can still fit multiple authors on a single line.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoTPAC: Use indexed subfields only in author search links
Dan Scott [Wed, 15 Jan 2014 20:25:02 +0000 (15:25 -0500)]
TPAC: Use indexed subfields only in author search links

Addresses LP# 1267231 in which we found that the titles of works in the added
author field (such as subfield t) were showing up in the link ahead of the
author's birth and death date (if applicable). Now we reserve the link for
only the indexed author subfields (depends on whether the name is personal,
corporate, or conference, but generally subfields a/b/c/d/e/n/q), then the
extra subfields go after the name + dates, then we finally put the relationship
into the parentheses after everything else.

We also simplify the markup so that each name is contained in a single <span
class="rdetail_author_div"> element to make it easier to control the layout.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoSerials: Batch Receive interface Copy Location widget was inert
Lebbeous Fogle-Weekley [Thu, 14 Nov 2013 20:59:55 +0000 (15:59 -0500)]
Serials: Batch Receive interface Copy Location widget was inert

Choosing a value from the Copy Location widget wasn't working.  You'd
get a default copy location (or the one supplied by the Receive Unit
Copy Template) no matter what you set that control too.

This is fixed.  One does not read from XUL menulist element by using its
'value' property.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
11 years agoLP#882586: In Serial Control View, show copy templates owned by ancestors
Lebbeous Fogle-Weekley [Wed, 15 Jan 2014 22:53:25 +0000 (17:53 -0500)]
LP#882586: In Serial Control View, show copy templates owned by ancestors

When creating/editing distributions, dropdowns for Receive Unit Template
and Bind Unit Template now show copy templates owned not only at the
distribution's holding lib, but at any of the holding lib's ancestors.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoPull forward previous upgrade scripts
Mike Rylander [Mon, 20 Jan 2014 16:17:29 +0000 (11:17 -0500)]
Pull forward previous upgrade scripts

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoCreate 008 - take only the first field/subfield combo
Dan Scott [Mon, 20 Jan 2014 03:24:07 +0000 (22:24 -0500)]
Create 008 - take only the first field/subfield combo

In the event that there were multiple $a subfields in, say, 044, the create 008
function could spew raw XML into the 008 field. Avoid that by taking the primary
instance.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoAllow generating fixed data in control field 008 quickly user/dbs/008ism
Pasi Kallinen [Thu, 18 Jul 2013 18:00:31 +0000 (21:00 +0300)]
Allow generating fixed data in control field 008 quickly

Language and country codes come from 041a and 044a,
Date1 comes from 260c, and the record date is set to current day.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Conflicts:
Open-ILS/xul/staff_client/server/cat/marcedit.js

11 years agoLP#1235474: fix failure of authority browse context menu to render
Galen Charlton [Fri, 4 Oct 2013 21:44:56 +0000 (14:44 -0700)]
LP#1235474: fix failure of authority browse context menu to render

This patch fixes a situation where if an authority record that would
be brought up by the authority browse context menu in the MARC editor
lacks an 003 field, the context menu would not be rendered all, meaning
that the default context menu (e.g., cut/copy/paste/etc.) would be
displayed instead.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoNew live test for fetching and update bre/MARC data
Bill Erickson [Thu, 10 Oct 2013 20:05:57 +0000 (16:05 -0400)]
New live test for fetching and update bre/MARC data

Fetch a record, test the title, add a new subfield, update the record,
and test that the new subfield survived the update.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoMove hard-coded style out of the copy status layout.
Pasi Kallinen [Tue, 18 Jun 2013 06:01:30 +0000 (09:01 +0300)]
Move hard-coded style out of the copy status layout.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoLP104785: Selfcheck needs to be run with HTTPS
Elliot Voris [Mon, 9 Dec 2013 18:57:20 +0000 (12:57 -0600)]
LP104785: Selfcheck needs to be run with HTTPS

Redirect attempts to connect to the self-check via HTTP to the more secure
HTTPS instead. Addresses this bug reported in launchpad:
https://bugs.launchpad.net/evergreen/+bug/1047485

Based on work for Apache 2.2 by Michael Peters <mrpeters@library.in.gov>,
updated and applied to 2.4 by Elliot Voris.

Signed-off-by: Elliot Voris <evoris@slcconline.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoMore explicit database configuration instructions
Dan Scott [Sun, 19 Jan 2014 18:52:20 +0000 (13:52 -0500)]
More explicit database configuration instructions

These README tweaks should help new folk install Evergreen with
a few less hurdles.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoFedora: Net::SSLeay 1.55 is too new for Net::HTTPS::Any
Dan Scott [Sun, 19 Jan 2014 16:30:57 +0000 (11:30 -0500)]
Fedora: Net::SSLeay 1.55 is too new for Net::HTTPS::Any

Although Net::HTTPS:Any wants Net:SSLeay 1.30 or later, 1.55 is apparently too
late, or something. The alternative is Crypt::SSLeay, which seems to work, so
let's go with that.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoLP#1269884 repair MVR id / doc_id thinko
Bill Erickson [Thu, 16 Jan 2014 18:03:34 +0000 (13:03 -0500)]
LP#1269884 repair MVR id / doc_id thinko

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
11 years agoReplace deprecated javascript escape() with encodeURIComponent()
Pasi Kallinen [Fri, 28 Jun 2013 05:47:11 +0000 (08:47 +0300)]
Replace deprecated javascript escape() with encodeURIComponent()

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Conflicts:
Open-ILS/xul/staff_client/chrome/content/auth/controller.js
Open-ILS/xul/staff_client/chrome/content/util/error.js
Open-ILS/xul/staff_client/chrome/content/util/print.js
Open-ILS/xul/staff_client/server/admin/offline_manage_xacts.js
Open-ILS/xul/staff_client/server/circ/print_list_template_editor.js

Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoAnd renaming the test
Mike Rylander [Thu, 16 Jan 2014 20:46:41 +0000 (15:46 -0500)]
And renaming the test

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoRenumbering the test
Mike Rylander [Thu, 16 Jan 2014 20:44:58 +0000 (15:44 -0500)]
Renumbering the test

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoRenumbering the upgrade script
Mike Rylander [Thu, 16 Jan 2014 20:44:48 +0000 (15:44 -0500)]
Renumbering the upgrade script

Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoTest for Mike's proximity adjustment fix two commits back
Lebbeous Fogle-Weekley [Thu, 16 Jan 2014 19:59:25 +0000 (14:59 -0500)]
Test for Mike's proximity adjustment fix two commits back

Being placed in Open-ILS/src/sql/Pg/live_t, the test requires stock and
Concerto data be loaded.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoUpgrade script
Mike Rylander [Thu, 16 Jan 2014 19:11:34 +0000 (14:11 -0500)]
Upgrade script

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>
11 years agoFix proximity adjustment calculator
Mike Rylander [Thu, 16 Jan 2014 18:58:12 +0000 (13:58 -0500)]
Fix proximity adjustment calculator

The canonical use case for proximity adjustment is to use it broadly
to effect the local proximity of items within a particular area, in
a like manner, across many parts of the org tree.  However, in cases
where it is lightly used, or used with non-overlapping criteria columns,
there are cases where the adjustment will spread beyond its intended
range of influence.

The changes here create a much stricter and correct test for rule
matching, which will end in the correct choice of rules in all cases.

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>
11 years agomake_release cleanup and options
Bill Erickson [Wed, 18 Dec 2013 18:31:18 +0000 (13:31 -0500)]
make_release cleanup and options

* Avoid packaging the XULRunner packages within the Evergree tarball

* Skip the inline SQL upgrade script edit step by default; continue
  supporting option inline editing with a new -r option.

* New -i option forces the script to bypass the lengthy i18n process,
  which is primarily useful for quickly testing changes to this script.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoIn prereq installer, don't try to chown extracted files to original UID/GID
Lebbeous Fogle-Weekley [Tue, 14 Jan 2014 22:11:45 +0000 (17:11 -0500)]
In prereq installer, don't try to chown extracted files to original UID/GID

As this Makefile is designed to be used by a make process running as
root, this will avoid problems on some systems when tar extracts
files and tries to give them the same UID/GID as they have in their
archives, but those accounts don't exist on the local system.

e.g, libdbi has files set 1000/1000. On most systems, there's a user
and a group with these IDs, but there can be systems where nothing
uses those IDs, and where tar fails with e.g. 'tar: libdbi-0.8.3:
Cannot change ownership to uid 1000, gid 1000: Invalid argument'

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
11 years agoLP#1234201: fix menu item to display patron requests (if summary is horizontal)
Galen Charlton [Tue, 14 Jan 2014 18:30:48 +0000 (13:30 -0500)]
LP#1234201: fix menu item to display patron requests (if summary is horizontal)

This patch adds a missing command element to the horizontal
patron summary display so that the 'Acquisition Requests' menu
item will work.

To test:

[1] Set the Patron circulation summary is horizontal library setting
    to true.
[2] Retrieve a patron and try using the Acquisition Requests menu
    item.  It will do nothing.
[3] Apply the patch and clear cache in the staff client.
[4] Repeat step 2.  This time, the Acquisitions Request menu item
    should bring up the list of the patron's requests.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Srey Seng <sreyseng@gmail.com>
11 years agoStamping 0851 - changes for Encode.pm 2.54+
Dan Wells [Tue, 14 Jan 2014 19:59:56 +0000 (14:59 -0500)]
Stamping 0851 - changes for Encode.pm 2.54+

Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoUpgrade file for Encode.pm 2.54+ changes
Dan Wells [Tue, 14 Jan 2014 19:12:53 +0000 (14:12 -0500)]
Upgrade file for Encode.pm 2.54+ changes

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
11 years agoAdd pgTAP test for normalized MARC records
Dan Scott [Fri, 25 Oct 2013 17:54:35 +0000 (13:54 -0400)]
Add pgTAP test for normalized MARC records

Specifically, we're concerned about ensuring that any changes related to
the fix for Encode (requiring the removal of the effectively useless but
now erroring decode_utf8()) do not inadvertently change the content of
the MARC records on ingest. Because we wouldn't want to have to reingest
everything to normalize search, etc.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
11 years agoTest Perl Unicode normalization process
Dan Scott [Thu, 24 Oct 2013 21:44:00 +0000 (17:44 -0400)]
Test Perl Unicode normalization process

Add some basic tests of our Unicode normalization (and entityization)
process.

Also, 'use utf8;' tells the script that it contains UTF8 characters,
not binary bytes, and resolves a test problem.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoEncode.pm change to the UTF8 flag
Dan Scott [Mon, 21 Oct 2013 15:58:06 +0000 (11:58 -0400)]
Encode.pm change to the UTF8 flag

In the past, decode_utf8() silently ignored attempts to decode data
with the UTF8 flag on. However, Encode.pm changed around 2.53 and
resulted in wide-character errors preventing the likes of
--load-all-sample from working.

Since our data should already be UTF8 when it hits these functions, we
should not be trying to decode it in the first place.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
11 years agoLP#1269042: prevent acq seach from building dropdown of every copy ID in the DB
Galen Charlton [Tue, 14 Jan 2014 16:00:38 +0000 (11:00 -0500)]
LP#1269042: prevent acq seach from building dropdown of every copy ID in the DB

This patch ensures that if a user sets a search field in the
acquisitions general search form to the line item details copy ID
(labeled "LID - Evergreen Copy ID"), the form presents a normal
input widget rather than trying to build a drop-down containing
every copy ID in the database.  Except for very small databases,
the previous behavior would mean that an open-ils.pcrud backend
would eventually consume a great deal of memory trying to service
a request for all copies in the system.

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