working/Evergreen.git
7 years agodocs: LP1655400 Phonelist.pm broken formatting
Jeanette Lundgren [Tue, 10 Jan 2017 20:21:05 +0000 (15:21 -0500)]
docs: LP1655400 Phonelist.pm broken formatting

Signed-off-by: Jeanette Lundgren <jlundgren@cwmars.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1662319: zindex Tweak in Patron Account
Kathy Lussier [Tue, 7 Feb 2017 05:06:10 +0000 (00:06 -0500)]
LP#1662319: zindex Tweak in Patron Account

The Other menu in a patron's account was dropping down behind the specify due
date input box. A tweak to the zindex for the Patron Account tabs was needed
for the menu to display in front of the input box.

Test plan:
Retrieve a patron in the web client. To the right of the Patron Account tabs,
click the Other dropdown menu. The menu will appear behind due date input.
Depending on the browser / screen resolution, it may also hide one of the
options in the dropdown menu. After the patch is loaded, the menu should display in front of the input as expected.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1455606: Add release note about removal of unused selfcheck password library setting
Ben Shum [Sun, 12 Feb 2017 00:07:14 +0000 (19:07 -0500)]
LP#1455606: Add release note about removal of unused selfcheck password library setting

Just in case, added a quick release note about the removal of this setting.

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1455606: Stamping upgrade script for removing unused selfcheck password setting
Ben Shum [Sun, 12 Feb 2017 00:04:59 +0000 (19:04 -0500)]
LP#1455606: Stamping upgrade script for removing unused selfcheck password setting

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1455606 - Also delete from config.org_unit_setting_type log.
Chris Sharp [Wed, 12 Oct 2016 11:05:32 +0000 (07:05 -0400)]
LP#1455606 - Also delete from config.org_unit_setting_type log.

As Ben Shum pointed out, the upgrade script will fail if entries
still exist for the removed setting, so we delete them too.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1455606 remove unused self checkout setting
Jeff Godin [Thu, 14 May 2015 23:58:18 +0000 (16:58 -0700)]
LP#1455606 remove unused self checkout setting

There is an unused (and apparently never used) org unit setting
related to self checkout:

circ.selfcheck.require_patron_password

This commit removes the redundant unused setting, related
permissions, and related strings.

Thanks to Lynn Floyd with the Anderson County Library for pointing
this out.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
Conflicts:
build/i18n/po/db.seed/db.seed.pot

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP 1656549: Remove Makefile, Makefile.in, Makefile.am
Jason Stephenson [Sat, 14 Jan 2017 18:00:45 +0000 (13:00 -0500)]
LP 1656549: Remove Makefile, Makefile.in, Makefile.am

This commit adds a line to Open-ILS/web/Makefile.am to delete the
Makefile, Makefile.in, and Makefile.am that are copied to the
destination WEBDIR.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#697926: change ar-AR to ar-JO
Ben Shum [Sat, 11 Feb 2017 23:24:35 +0000 (18:24 -0500)]
LP#697926: change ar-AR to ar-JO

Also change update script and .gitignore file references

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#697926: change ar-AR to ar-JO
Ben Shum [Sat, 11 Feb 2017 23:18:41 +0000 (18:18 -0500)]
LP#697926: change ar-AR to ar-JO

With an active translator from Jordan for the Arabic strings, we are opting
to change the locale from ar-AR to ar-JO.

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoTranslation updates - po files user/bshum/20170211-po-sync
Ben Shum [Sat, 11 Feb 2017 23:09:05 +0000 (18:09 -0500)]
Translation updates - po files

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1653742 Copy tree authoritative API share cstores
Bill Erickson [Tue, 3 Jan 2017 16:59:26 +0000 (11:59 -0500)]
LP#1653742 Copy tree authoritative API share cstores

Avoid opening one cstore connection per requested org unit in the
open-ils.cat.asset.copy_tree.retrieve.authoritative API by creating a
single shared cstore connection at the top of the API shared by all
API actions.

To test:

1. In one terminal:

% tail osrfsys.log | grep transaction.begin

2. In another terminal:

srfsh% request open-ils.cat
open-ils.cat.asset.copy_tree.retrieve.authoritative "AUTOTOKEN", 217,
[1,2,3,4,5,6,7,8,9]

3. 9 cstore transactions are opened before patching.  After patching,
only 1 is created.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP 1648918: Remove Workstation at Root of User's Permission Tree
Jason Stephenson [Sat, 10 Dec 2016 01:45:33 +0000 (20:45 -0500)]
LP 1648918: Remove Workstation at Root of User's Permission Tree

If you register a workstation at the root of the user's permission
tree in the webstaff client, you are not able to later remove it.  The
Remove button is dimmed.  You can remove a workstation registered at
any other org_unit where the user has the REGISTER_WORKSTATION
permission.

To reproduce this bug, login as the admin user and register a
workstation at the CONS org_unit.  Then, go to Workstation
Administration and see that the Remove button is dimmed.

To test the patch, do the same, but see that the Remove button is not
dimmed.  When you click it, the workstation is also removed.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1360347: Stamping upgrade script for custom status at receiving
Kathy Lussier [Fri, 10 Feb 2017 15:55:07 +0000 (10:55 -0500)]
LP#1360347: Stamping upgrade script for custom status at receiving

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1360347 - Acq custom copy status at receiving
Chris Sharp [Tue, 23 Aug 2016 12:53:41 +0000 (08:53 -0400)]
LP#1360347 - Acq custom copy status at receiving

Current acq behavior is that received items get a
copy status of "In Process".  This status is typically
holdable and opac_visible, and some libraries have a need
for an intermediate status between "On Order" and "In Process".

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDatabase upgrade script fixes
Kathy Lussier [Fri, 10 Feb 2017 13:10:15 +0000 (08:10 -0500)]
Database upgrade script fixes

Fixing up a couple of upgrade scripts that I merged this week.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1654534: Prevent loop that occurs when staff us 'place another hold' link
Kathy Lussier [Fri, 6 Jan 2017 16:13:26 +0000 (11:13 -0500)]
LP#1654534: Prevent loop that occurs when staff us 'place another hold' link

A hidden field that tracked the page the user was on before placing a hold was
inadvertently removed in another bug fix. As a result, if staff used the link
to place another hold on the same title, they were stuck in a loop where they
couldn't return to the source page after hitting the 'continue' button. This
commit restores that hidden field.

Also provides a fix so that hold labels used in the place another hold link
can be translated.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1613341: Stamping upgrade script for punctuation-insensitive patron search
Kathy Lussier [Thu, 9 Feb 2017 23:28:12 +0000 (18:28 -0500)]
LP#1613341: Stamping upgrade script for punctuation-insensitive patron search

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1613341 - Patron name search should be punctuation-insensitive
Dan Pearl [Wed, 8 Feb 2017 22:57:20 +0000 (17:57 -0500)]
LP#1613341 - Patron name search should be punctuation-insensitive

O'Brien will be matched by Obrien, O'Brien, O Brien etc.
Grubbly-Plank will be matched by Grubbly Plank, Grubbly-Plank, Grubblyplank, etc.
This feature is controlled by the same org setting that controls ignoring
of diacritical marks.

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1541801: grab search field code correctly
Galen Charlton [Thu, 9 Feb 2017 20:20:26 +0000 (15:20 -0500)]
LP#1541801: grab search field code correctly

When using orderObjectBy, the search field code is now
to be found in a property called 'key'.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1541801: order search fields in Z39.50 alphabetically
Galen Charlton [Mon, 6 Feb 2017 17:07:01 +0000 (12:07 -0500)]
LP#1541801: order search fields in Z39.50 alphabetically

This patch causes search fields in the Z39.50 search interface
in the web staff client to be place in alphabetical order by
field label.

To test:

[1] Open the Z39.50 search page in the web staff client and select
    one or more search services.
[2] Verify that the list of fields is ordered alphabetically.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1541801: add angular-order-object-by dependency
Galen Charlton [Mon, 6 Feb 2017 17:03:28 +0000 (12:03 -0500)]
LP#1541801: add angular-order-object-by dependency

This adds a orderObjectBy filter that permits the ordering
of results in ng-repeat when the source collection is an
object instead of any array, e.g.,

<div ng-repeat=(foo, bar) in object | orderObjectBy: 'sortfield' ...

The dependency is MIT-licensed and is copyright (c) 2015 Fabricio Quagliariello

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1005040: Stamping upgrade script for realign search layers
Kathy Lussier [Thu, 9 Feb 2017 20:58:17 +0000 (15:58 -0500)]
LP#1005040: Stamping upgrade script for realign search layers

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoAdjust comment about apostrophes in opensearch code. This is a marker for future...
Mike Rylander [Thu, 9 Feb 2017 19:45:55 +0000 (14:45 -0500)]
Adjust comment about apostrophes in opensearch code.  This is a marker for future work.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1005040: Release notes entry for advanced search limiter improvements
Kathy Lussier [Thu, 9 Feb 2017 18:41:06 +0000 (13:41 -0500)]
LP#1005040: Release notes entry for advanced search limiter improvements

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1005040: Styling cleanup for filter display
Mike Rylander [Tue, 20 Dec 2016 20:29:50 +0000 (15:29 -0500)]
LP#1005040: Styling cleanup for filter display

1) Use a unicode X instead of the string "Remove"
2) Provide a border around filters
3) Label filters with "Filtered by"
4) Only show "[X filters applied ]" when in mobile mode, and make it
   work like the "Refine these results" button.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP1281280: Allow test script to run without a full installation
Mike Rylander [Mon, 17 Feb 2014 18:00:05 +0000 (13:00 -0500)]
LP1281280: Allow test script to run without a full installation

--no-connect causes it to do what it says on the tin.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP1281280: Improve query tree compression
Mike Rylander [Tue, 15 Nov 2016 19:26:48 +0000 (14:26 -0500)]
LP1281280: Improve query tree compression

In addition to collapsing adjacent nodes sharing the same boolean operator,
we'll now also do the following two things: collapse filters, facets and
modifiers when there exists only a single subnode; and absorb single node
subplans.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP1281280: Implement adjacent-node pull-up optimization
Mike Rylander [Mon, 17 Feb 2014 18:00:12 +0000 (13:00 -0500)]
LP1281280: Implement adjacent-node pull-up optimization

If one has a long list of boolean operations, such as can
be generated by third-party products looking for a book that
might have one of several different ISBNs, those are currently
searched separatelly, in a deep nested set of joined full-text
queries.  This behavior was introduced to address problems of
non-deterministic grouping of boolean operations, along with
them generally not working in complex situations.  We call
the mechanism "boolean push-down", because it explicitly
bifurcates the tree at each boolean operator.

This is suboptimal in the case of adjacent, like boolean ops.

This commit re-compresses the parse tree for adjacent nodes
that use the same boolean operator and are composed of atoms
only (that is, no modifiers, filters, or phrases).  It ignores
any explicit groupings by the user, the "magical" floating
subplan, any subplans that include filters or modifiers, and
any nodes that have a mix of boolean operators between their
atoms.

This is probably more conservative that is strictly necessary,
and phrases would likely be safe, but baby steps.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1005040: Add more ignorable filters to the sidebar count calculation
Mike Rylander [Thu, 20 Oct 2016 14:19:09 +0000 (10:19 -0400)]
LP#1005040: Add more ignorable filters to the sidebar count calculation

We need to ignore site() and location_groups() when counting filters, as
these have widgets in the search bar.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1005040: adjust test cases
Galen Charlton [Tue, 18 Oct 2016 18:20:25 +0000 (14:20 -0400)]
LP#1005040: adjust test cases

* Now reflects change in signature of
  OpenILS::WWW::EGCatLoader::_prepare_biblio_search()
* add test case for change in date filter mapping

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: show number of filters applied
Mike Rylander [Tue, 11 Oct 2016 15:36:42 +0000 (11:36 -0400)]
LP#1005040: show number of filters applied

If at least advanced search filter is applied, the number
of them in force is displayed just below the search bar
next to the refine search link.

This patch also renames "opac-auto-102" CSS class to "refine_search"
and tweaks its left padding.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: add filter control widget for publication year
Galen Charlton [Tue, 4 Oct 2016 21:00:15 +0000 (17:00 -0400)]
LP#1005040: add filter control widget for publication year

This patch also changes the rewriting of an "is"
pubdate filter from between(value,value) to date1(value),
which should be slightly faster.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: teach filter boxes about human-readable crad descriptions
Galen Charlton [Tue, 4 Oct 2016 20:06:32 +0000 (16:06 -0400)]
LP#1005040: teach filter boxes about human-readable crad descriptions

This patch ensures that the human-readable record attribute
description, if available, will be used for the title of each
filter control widget.  It also gives descriptions to record
attributes commonly used for advanced search filters.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: display search filter sidebar on lowhits page
Galen Charlton [Tue, 4 Oct 2016 18:21:29 +0000 (14:21 -0400)]
LP#1005040: display search filter sidebar on lowhits page

With this, if a user over-filters their initial search, they
can more easily remove filters.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: various improvements to the filter control widgets
Galen Charlton [Tue, 4 Oct 2016 18:08:14 +0000 (14:08 -0400)]
LP#1005040: various improvements to the filter control widgets

* ensure that filter values are sorted
* fix the link for removing location filters
* don't display a filter box for search_format, as that
  already has a separate drop-down in the search bar

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: CSS styling of filter control boxes
Galen Charlton [Tue, 4 Oct 2016 16:25:42 +0000 (12:25 -0400)]
LP#1005040: CSS styling of filter control boxes

This patch adds several CSS classes to support
distinguishing filter boxes from facet boxes:

filter_box_wrapper
filter_box_temp
filter_template
filter

It also sets a different background color for the header of filter
boxes. Padding between entries in a filter list is reduced as
compared to facets, both to save a bit of vertical space and to
subtly distinguish filters from facets.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: add filter control widgets to TPAC
Mike Rylander [Tue, 20 Sep 2016 21:09:35 +0000 (17:09 -0400)]
LP#1005040: add filter control widgets to TPAC

This patch also moves facet retrieval to after record retrieval, to
make sure facet data is available, and wait for it

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1005040: implement business logic
Mike Rylander [Thu, 25 Aug 2016 21:48:02 +0000 (17:48 -0400)]
LP#1005040: implement business logic

This patch gut most of the top level Search/Biblio.pm wrapper,
inlines opensearch search params, uses the new dispach method,
for OpenSRF subrequests, and return the abstract query when
requested.

It also adds CDBI classes for asset.copy_location_group which
is needed for looking them up at search time.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7 years agoLP#1649180: Add release note for translator make target
Ben Shum [Mon, 12 Dec 2016 04:17:46 +0000 (23:17 -0500)]
LP#1649180: Add release note for translator make target

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1649180: Update README to reflect translator make target
Ben Shum [Thu, 24 Nov 2016 21:04:11 +0000 (16:04 -0500)]
LP#1649180: Update README to reflect translator make target

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1649180: Add translator make target
Ben Shum [Thu, 24 Nov 2016 20:20:50 +0000 (15:20 -0500)]
LP#1649180: Add translator make target

For the four major supported Linux distros:

  - Ubuntu Xenial
  - Ubuntu Trusty
  - Debian Jessie
  - Debian Wheezy

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1639782: Release note entry for Active Date Column Picker Option
Kathy Lussier [Thu, 9 Feb 2017 16:20:00 +0000 (11:20 -0500)]
LP#1639782: Release note entry for Active Date Column Picker Option

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1639782 - Add Active Date to Item Status Column Picker
Chris Sharp [Mon, 7 Nov 2016 12:40:24 +0000 (07:40 -0500)]
LP#1639782 - Add Active Date to Item Status Column Picker

Circ and Cataloging staff need a quick way to view the Active
Date of an item in the "Item Status" (F5) interface.  This
makes that column available for selection.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP 1656547: Add XML directive to oils_sip.xml.example.
Jason Stephenson [Sat, 14 Jan 2017 15:32:28 +0000 (10:32 -0500)]
LP 1656547: Add XML directive to oils_sip.xml.example.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1308090: Stamping upgrade script for trim trailing punctuation normalizer
Kathy Lussier [Wed, 8 Feb 2017 20:11:19 +0000 (15:11 -0500)]
LP#1308090: Stamping upgrade script for trim trailing punctuation normalizer

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1308090: Updating release notes to reflect both parts of this new feature
Kathy Lussier [Wed, 8 Feb 2017 19:19:08 +0000 (14:19 -0500)]
LP#1308090: Updating release notes to reflect both parts of this new feature

The code introduced two distinct features related to authors and RDA records,
but only one was highlighted in the release notes. Notes are updated to reflect
both changes.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1308090: pgTAP fixes
Kathy Lussier [Mon, 3 Oct 2016 16:25:58 +0000 (12:25 -0400)]
LP#1308090: pgTAP fixes

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Dan Pearl <dpearl@cwmars.org>
LP#1308090 - Additional fix to pgtap test.

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1308090 Relator fields and facets need normalization.
Dan Pearl [Thu, 2 Jun 2016 19:02:25 +0000 (15:02 -0400)]
LP#1308090 Relator fields and facets need normalization.
This incorporates two changes: facets were generated with trailing
punctuation, which resulted in more than one entry for the same item,
differing only in punctuation.  In addition, relator codes were suppressed
in the record detail unnecessarily.

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Kate Butler <katebutler@rodgerslibrary.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1534787 Patron Message Center port
Kyle Huckins [Wed, 4 Jan 2017 17:36:21 +0000 (09:36 -0800)]
LP#1534787 Patron Message Center port

Port patron message center from XUL client to
web client.

Signed-off-by: Kyle Huckins <khuckins@catalystdevworks.com>
Signed-off-by: Christine Burns <christine.burns@bc.libraries.coop>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1537217 Precat Checkout Circ Modifier
Kyle Huckins [Tue, 4 Oct 2016 22:55:23 +0000 (15:55 -0700)]
LP#1537217 Precat Checkout Circ Modifier

Precat checkout in the browser client no longer
requires the use of a circ modifier(when circ
modifiers exist).  Similarly, no circ modifier
is chosen by default.

Signed-off-by: Kyle Huckins <khuckins@catalystdevworks.com>
Signed-off-by: Christine Burns <christine.burns@bc.libraries.coop>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: Updating to reflect Web staff client
Clare Sobotka [Sun, 5 Feb 2017 16:37:46 +0000 (08:37 -0800)]
Docs: Updating to reflect Web staff client

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
7 years agoLP#1660059: Protect against null value in group field
Mike Rylander [Tue, 31 Jan 2017 17:35:05 +0000 (12:35 -0500)]
LP#1660059: Protect against null value in group field

If a nullable event grouping field is configured, and a null value is indeed
encountered when pulling together events, the Action/Trigger code will exit
unceremoniously.  To prevent this, we will now collect events with either
a null grouping object or grouping field, and use a new batch invalidation
API call to get rid of them as quickly as possible after group sorting is
complete.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
7 years agoLP1659892: Remove page from URL in metarecord navigation
blake [Fri, 27 Jan 2017 16:57:12 +0000 (10:57 -0600)]
LP1659892: Remove page from URL in metarecord navigation

Scrubs the 'page' URI value from the "Return to Grouped Search Results"
preventing the resulting page from showing the currently selected page.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657466 - Edit Due Date Doesn't Submit
Kyle Huckins [Thu, 19 Jan 2017 20:35:00 +0000 (12:35 -0800)]
LP#1657466 - Edit Due Date Doesn't Submit

Change references of nonexistant scope variable args.date
to args.due_date, enabling edit due date to correctly
submit.

Signed-off-by: Kyle Huckins <khuckins@catalystdevworks.com>
 Changes to be committed:
modified:   Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1621947: webstaff address alert functionality
Kyle Huckins [Wed, 19 Oct 2016 21:57:02 +0000 (14:57 -0700)]
LP#1621947: webstaff address alert functionality

Add Address Alert to the alerts pane when address alert
is detected in the patron editor. This implements functionality
that was originally added tot he XUL patron editor in LP#898248.

To test:

[1] Define an address alert.
[2] Open a patron record in the webstaff patron editor and
    create or update an address that would match the alert
    set up in step 1. Verify, upon blur of street 1, street 2,
    or the city inputs that an alert is displayed.

Note that the feature does not call for the presence of an
address alert to prevent the operator from saving the record;
the alert is purely advisory.

Signed-off-by: Kyle Huckins <khuckins@catalystdevworks.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1655399 webstaff: User perm editor grantable fix
Bill Erickson [Tue, 10 Jan 2017 17:19:35 +0000 (12:19 -0500)]
LP#1655399 webstaff: User perm editor grantable fix

Correctly handle the boolean grantable flag in the user permission
editor.  In some cases, the boolean 0/1 values returned from storage are
returned as strings.  Cast them to numbers before checking truthiness.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1485374: Add missing comma on line 667 of oils_auth.c.
Jason Stephenson [Sat, 20 Aug 2016 17:42:31 +0000 (13:42 -0400)]
LP#1485374: Add missing comma on line 667 of oils_auth.c.

Fixes the following compiler error:
oils_auth.c: In function â€˜oilsAuthComplete’:
oils_auth.c:668:9: error: expected â€˜)’ before string constant
         "open-ils.auth_internal",
         ^

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: Add release notes
Mike Rylander [Tue, 23 Feb 2016 17:35:07 +0000 (12:35 -0500)]
LP#1485374: Add release notes

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: Adjust TZ scope in mod_perl
Mike Rylander [Tue, 23 Feb 2016 17:32:57 +0000 (12:32 -0500)]
LP#1485374: Adjust TZ scope in mod_perl

Use of a 'local' variable causes the TZ to be dropped prematurely. So,
instead, we set $ENV{TZ} globally and reset it when the mod_perl handler
object is destroyed.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: add way for C code to make TZ-aware subrequests
Galen Charlton [Tue, 23 Feb 2016 17:09:15 +0000 (12:09 -0500)]
LP#1485374: add way for C code to make TZ-aware subrequests

This patch adds a helper routine to allow C
methods to make subrequests that pass the client
time zone along. This helper is in turn used during
authentication to ensure that the user object
that is returned has timestamps that are in the
time zone of the client that makes the original
authentication request.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Conflicts:
Open-ILS/src/c-apps/oils_auth.c

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: call tzset() after setting timezone
Galen Charlton [Wed, 3 Feb 2016 22:50:58 +0000 (17:50 -0500)]
LP#1485374: call tzset() after setting timezone

Testing shows this to be needed to make strftime()
return the time in the client's time zone.

This is a bit confusing, however, as strftime per
POSIX should be acting as if it always calls tzset()
when doing formatting that involves the local timezone.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: Allow server timezone via CStoreEditor
Mike Rylander [Fri, 11 Sep 2015 15:19:34 +0000 (11:19 -0400)]
LP#1485374: Allow server timezone via CStoreEditor

In rare cases, the server's timezone may be preferable to the client's.
To plan for such cases we provide a way to signal that we want to use the
server's timezone.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1485374: Use client TZ in the database when supplied to the server
Mike Rylander [Mon, 3 Aug 2015 17:27:56 +0000 (13:27 -0400)]
LP#1485374: Use client TZ in the database when supplied to the server

In LP#1485371 we teach OpenSRF how to discover and pass the client timezone
to the server.  Now we can use that information to temporarily put the server
into that timezone, including database sessions, so that dates and times
are calculated and reported based on the timezone of the client.

To do that we:

 * Teach CStore and friends to use the client-supplied time zone
 * Teach Storage to use $ENV{TZ} for the db timezone inside transactions,
   and by default except for search-y methods
 * Teach the TPAC to set the client TZ at login

This requires javascript to be enabled in the TPAC, and investigates the
client timezone at patron login time.  No times are displayed in TPAC
interfaces before the patron logs in, so there is no point in detecting
the timezone before this point.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Conflicts:
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: authority_control_field script --days-back feature
Jane Sandberg [Fri, 27 Jan 2017 02:07:55 +0000 (18:07 -0800)]
Docs: authority_control_field script --days-back feature

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
7 years ago2.10.8-2.10.9 schema upgrade script
Galen Charlton [Wed, 25 Jan 2017 21:12:36 +0000 (16:12 -0500)]
2.10.8-2.10.9 schema upgrade script

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoDocs: Adding release notes for 2.11.2 point release
Kathy Lussier [Thu, 22 Dec 2016 19:20:33 +0000 (14:20 -0500)]
Docs: Adding release notes for 2.11.2 point release

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: Adding release notes for 2.10.9 point release
Kathy Lussier [Thu, 22 Dec 2016 19:20:33 +0000 (14:20 -0500)]
Docs: Adding release notes for 2.10.9 point release

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657885: Inform Vandelay of new chunking/bundling logic, part deux
Mike Rylander [Wed, 25 Jan 2017 17:33:24 +0000 (12:33 -0500)]
LP#1657885: Inform Vandelay of new chunking/bundling logic, part deux

Here we conditionally use the old "max_chunk_count" method provided by OpenSRF
when Evergreen is running atop a version that doesn't know about the bundling
rename.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657885: Inform Vandelay of new chunking/bundling logic
Mike Rylander [Wed, 25 Jan 2017 15:56:23 +0000 (10:56 -0500)]
LP#1657885: Inform Vandelay of new chunking/bundling logic

There is a naive attempt to force immediate streaming of results in Vandelay
for certain processes, but it both only helps a little, and breaks under the
new OpenSRF bundling/chunking logic.  So, we'll drop it where it's not
directly configurable, and test for the appropriate features where we can.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657885: Account for new bundling/chunking logic in OpenSRF 2.5+
Mike Rylander [Thu, 19 Jan 2017 20:54:53 +0000 (15:54 -0500)]
LP#1657885: Account for new bundling/chunking logic in OpenSRF 2.5+

When chunking was renamed bundling and actually chunking added in OpenSRF 2.5,
the few places in Evergreen that tried to make use of the old mechanism
directly now break. The most obvious breakage is in the alternate printable
hold pull list, which we fix here.  Evidence of other broken code should
be fixed as needed, though spots to look our for are z39.50 results and
Vandelay processing.

To test:

 1) In Evergreen 2.11 running on top of OpenSRF 2.5+, attempt to use the
    alt pull list printing interface at a location with many holds on their
    pull list.  The progress bar will spin forever.
 2) After applying this patch, do the same.  The interface should work
    quickly.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657237: Rewrite the hold target cache
Mike Rylander [Wed, 18 Jan 2017 19:38:00 +0000 (14:38 -0500)]
LP#1657237: Rewrite the hold target cache

We fixed the trigger that caused the problem in bug 167237, but now we need
to rewrite reporter.hold_request_record because T-holds are probably all
wrong.  No data was lost, we're just addressing the contents of a materialized
view.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jason Boyer <jboyer@library.in.gov>
7 years agoLP#1659006: Treat the Cost field like the other money fields in the copy editor,
Michele Morgan [Tue, 24 Jan 2017 14:17:58 +0000 (09:17 -0500)]
LP#1659006: Treat the Cost field like the other money fields in the copy editor,
reverting to null if blanked.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: Add browser requirements for running the web client
Kathy Lussier [Mon, 23 Jan 2017 16:18:12 +0000 (11:18 -0500)]
Docs: Add browser requirements for running the web client

Adding initial browser requirements for running the web client to the system
requirements file. For now, keeping XUL client requirements.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1494362 Docs: oversized screenshot
Jeanette Lundgren [Wed, 18 Jan 2017 19:22:58 +0000 (14:22 -0500)]
LP#1494362 Docs: oversized screenshot

Signed-off-by: Jeanette Lundgren <jlundgren@cwmars.org>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoLP#1657282: fix redirect of one-hit metarecord searches
Galen Charlton [Tue, 17 Jan 2017 21:58:39 +0000 (16:58 -0500)]
LP#1657282: fix redirect of one-hit metarecord searches

This patches fixes a bug where, when performing a metarecord
("Group Formats and Editions") search, one-hit result sets
get redirected to a "/eg/opac/record/0.0..." page, which
results in a "Bad Request" error being shown to the user.

To test:

[1] Perform a metarecord search that would result in exactly
    one metarecord search. Observe that the browser displays
    a "Bad Request" error page.
[2] Apply the patch and perform step 1 again. This time, the
    search should succeed. Note that if the metarecord contains
    more than one component, a results page with one grouped
    hit is displayed; if the metarecord has exactly one component,
    that bib's record page is displayed.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1657241 Stamping aged circ parent_circ index
Bill Erickson [Tue, 17 Jan 2017 20:24:53 +0000 (15:24 -0500)]
LP#1657241 Stamping aged circ parent_circ index

Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1657241 - Add parent_circ index to action.aged_circulation
Chris Sharp [Tue, 17 Jan 2017 20:09:15 +0000 (15:09 -0500)]
LP#1657241 - Add parent_circ index to action.aged_circulation

The lack of a parent_circ index on the aged_circulation table
was causing very long-running queries.  This solves the problem.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1657237 Stamping rhrr mat view trigger repair
Bill Erickson [Tue, 17 Jan 2017 20:08:58 +0000 (15:08 -0500)]
LP#1657237 Stamping rhrr mat view trigger repair

Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1657237: Properly constrain matview trigger function
Mike Rylander [Tue, 17 Jan 2017 19:46:36 +0000 (14:46 -0500)]
LP#1657237: Properly constrain matview trigger function

The function maintaining the reporter.hold_request_record table
was performing an unconstrained update when a hold was moved.  This
fixes that.

To test:

[1] Apply the patch, the perform an asset merge that would
    change the target of a hold request.  Verify that
    reporter.hold_request_record is properly update.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoDocs: adding section about circulating items in the Web client
Michelle Purcell [Sat, 14 Jan 2017 13:46:56 +0000 (10:46 -0300)]
Docs: adding section about circulating items in the Web client

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
7 years agoLP#1655149: Badges need CDBI support for location groups
Mike Rylander [Wed, 28 Dec 2016 19:43:34 +0000 (14:43 -0500)]
LP#1655149: Badges need CDBI support for location groups

The badge code needs to inspect copy location groups, and tries to do so using
Class::DBI classes. But we haven't told CDBI about aclg and friends.  Here we
tell Class::DBI about asset.copy_location_group so that storage can retrieve
directly.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoUpdated link syntax to fix broken section link.
Jeanette Lundgren [Mon, 9 Jan 2017 17:10:12 +0000 (12:10 -0500)]
Updated link syntax to fix broken section link.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoLP#1635407 webstaff: show patron alert pane once
Bill Erickson [Wed, 28 Dec 2016 21:15:24 +0000 (16:15 -0500)]
LP#1635407 webstaff: show patron alert pane once

Display the patron alerts pane only once per patron instance per
browser tab.  This is done by setting a new session storage value which
tracks the last alerted patron.  This value is replaced each time a new
patron is loaded into the main patron app (e.g. double-clicking the
patron row in patron search) and is maintained separately per browser
tab.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1502292 Add Volumes from Bib Record
Kyle Huckins [Thu, 17 Nov 2016 19:47:31 +0000 (11:47 -0800)]
LP#1502292 Add Volumes from Bib Record

Add 'Add Volumes' button to record summary pane to
add a new volume for a record.

Signed-off-by: Kyle Huckins <khuckins@catalystdevworks.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
modified:   Open-ILS/src/templates/staff/cat/catalog/t_catalog.tt2
modified:   Open-ILS/web/js/ui/default/staff/cat/catalog/app.js

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: booking options from Patron interface
Jason Etheridge [Tue, 3 Jan 2017 11:58:25 +0000 (06:58 -0500)]
webstaff: booking options from Patron interface

Includes some workarounds for xulG errors, and lets the booking interfaces
receive the patron barcode via a query param instead of xulG.  The XUL client
spawns a new tab for these interfaces, but we stick with web norms and load in
the current tab (control+click will open a new tab).  This does, however, blow
away the patron interface; it doesn't embed like most of the options from the
Other menu.  One other change: we don't have support for nested drop-down menus
in the web client, so I've flattened the entries like so:

* Booking: Create or Cancel Reservations
* Booking: Pick Up Reservations
* Booking: Return Reservations

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: workaround a xulG undefined bug in Admin -> Booking -> Resources
Jason Etheridge [Mon, 19 Dec 2016 21:00:13 +0000 (16:00 -0500)]
webstaff: workaround a xulG undefined bug in Admin -> Booking -> Resources

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: broader CSS tweak for Chrome for disabled text widgets
Jason Etheridge [Mon, 19 Dec 2016 20:44:48 +0000 (15:44 -0500)]
webstaff: broader CSS tweak for Chrome for disabled text widgets

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: error sounds instead of warning sounds for some events
Jason Etheridge [Mon, 12 Dec 2016 19:55:42 +0000 (14:55 -0500)]
webstaff: error sounds instead of warning sounds for some events

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: add sounds related to checkout
Jason Etheridge [Mon, 12 Dec 2016 19:42:54 +0000 (14:42 -0500)]
webstaff: add sounds related to checkout

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: sound for batch hold edit
Jason Etheridge [Mon, 12 Dec 2016 20:20:36 +0000 (15:20 -0500)]
webstaff: sound for batch hold edit

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: Add sounds for in house use and patron lookup
Mike Rylander [Mon, 12 Dec 2016 15:36:27 +0000 (10:36 -0500)]
webstaff: Add sounds for in house use and patron lookup

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: use ng-show rather than ng-if for showIframe
Galen Charlton [Wed, 30 Nov 2016 10:54:22 +0000 (05:54 -0500)]
webstaff: use ng-show rather than ng-if for showIframe

This avoids an issue with ng-if creating a separate
scope.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: fix bower.json to bring in iframe-resizer
Galen Charlton [Tue, 6 Dec 2016 22:31:04 +0000 (17:31 -0500)]
webstaff: fix bower.json to bring in iframe-resizer

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: throw a kitchen sink at double-scrollbar issues
Galen Charlton [Wed, 30 Nov 2016 10:25:52 +0000 (05:25 -0500)]
webstaff: throw a kitchen sink at double-scrollbar issues

This patch ameliorates, but does not eliminate, a bunch
of cases where double-scrollbars could appear.

[1] Adds iframe-resizer (https://github.com/davidjbradshaw/iframe-resizer, MIT license)
    as an option for automatically adjusting the height of an iframe
    to fit the contents.  This can be enabled by ensuring that
    the page to be embedded brings in

    /js/ui/default/staff/build/js/iframeResizer.contentWindow.min.j

    and adding an 'autoresize' attribute to the egEmbedFrame directive.

    This is now used by the legacy reports page.

[2] Gives a 'min-height' attribute to egEmbedFrame and sets a
    value for Dojo grid interfaces embedded by local and server admistration.
[3] Adds a 'allow-escape' attribute to egEmbedFrame; when set to
    true, adds buttons to allow the user to open the embedded page
    in a new tab.
[4] Removes some extraneous <div>s that were interferring with resizing
    for some grids.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: tweaks to transit list
Galen Charlton [Wed, 30 Nov 2016 02:45:10 +0000 (21:45 -0500)]
webstaff: tweaks to transit list

- make call number column sortable
- add shelving location column

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: Booking Admininstration
Jason Etheridge [Fri, 2 Dec 2016 21:24:26 +0000 (16:24 -0500)]
webstaff: Booking Admininstration

  * Resource Attribute Maps
  * Resource Attribute Values
  * Resource Attributes
  * Resource Types
  * Resources

and a xulG load timing issue workaround

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: final Booking menu entry
Jason Etheridge [Fri, 2 Dec 2016 21:04:44 +0000 (16:04 -0500)]
webstaff: final Booking menu entry

  * Return Reservations

and xulG load timing issue workaround

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: more Booking menu entries
Jason Etheridge [Fri, 2 Dec 2016 20:58:17 +0000 (15:58 -0500)]
webstaff: more Booking menu entries

  * Pull List
  * Capture Resources
  * Pick Up Reservations

plus another xulG load timing issue workaround

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: first ported Booking interface
Jason Etheridge [Fri, 2 Dec 2016 20:43:10 +0000 (15:43 -0500)]
webstaff: first ported Booking interface

  * Create Reservations

with a xulG timing issue workaround :-/

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agowebstaff: add seed data for item status receipt template
Galen Charlton [Wed, 30 Nov 2016 20:11:10 +0000 (15:11 -0500)]
webstaff: add seed data for item status receipt template

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>