working/Evergreen.git
8 years agoLP#1367926: Add support for (nearly) direct access to the full unapi backend
Mike Rylander [Wed, 10 Sep 2014 16:22:44 +0000 (12:22 -0400)]
LP#1367926: Add support for (nearly) direct access to the full unapi backend

Some parts of Evergreen (notably the TPAC), and various 3rd party services,
would benefit from full and direct access to the power of the backend (read:
faster, more complete, more API-stable) unAPI (um) API. Related, many moons
ago, I built a perl module (OpenILS::Utils::TagURI) to make parsing of tag
URIs systematic for use in OpenSearch and unAPI contexts. This branch uses
O::U::TagURI and a simple shim inside open-ils.supercat to expose the power
of that backend unAPI functionality.

By way of example, here is the tag URI to look up a copy, by barcode, and
request the call number, bib and bib attributes at the same time.  The
barcode in this example is "ACQ140":

 tag::U2@acp/ACQ140{acn,bre,mra}/-/0/barcode

The full example URL would be something like:

 http://example.com/opac/extras/unapi?id=tag::U2@acp/ACQ140{acn,bre,mra}/-/0/barcode&format=xml

Here is retrieving a bib in MODS 3.2 with holdings embedded:

 tag::U2@bre/267{holdings_xml,acn,acp,mra}

And the URL:

 http://example.com/opac/extras/unapi?tag::U2@bre/267{holdings_xml,acn,acp,mra}&format=mods32

To test:

Try the example URLs, varying record ID, classes, and includes. Some
classes and includes available are:

* bre (bibs)
* acn (volumes)
* acp (copies)
* biblio_record_entry_feed (multiple bibs)
* holdings_xml
* cbs (bib source)
* circ (circulation checkout and due dates)

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoForgot an acknowledgement in the 2.9.2 point release notes
Kathy Lussier [Wed, 17 Feb 2016 19:43:24 +0000 (14:43 -0500)]
Forgot an acknowledgement in the 2.9.2 point release notes

Sorry Ben!

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoAdding 2.9.2 bug fixes and acknowledgements to the 2.9 release notes
Kathy Lussier [Wed, 17 Feb 2016 19:34:18 +0000 (14:34 -0500)]
Adding 2.9.2 bug fixes and acknowledgements to the 2.9 release notes

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoAdding 2.8.6 bug fixes to the 2.8 Release Notes
Kathy Lussier [Wed, 17 Feb 2016 18:03:40 +0000 (13:03 -0500)]
Adding 2.8.6 bug fixes to the 2.8 Release Notes

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1544606: Copy the new directories we make for locales
Ben Shum [Wed, 17 Feb 2016 18:39:22 +0000 (13:39 -0500)]
LP#1544606: Copy the new directories we make for locales

Make it cp -r to copy the directories and not just the files (of which
there won't be any by default).

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1544606: Change i18n Makefile so that there are different dirs for opac vs webstaff
Ben Shum [Thu, 11 Feb 2016 20:40:05 +0000 (15:40 -0500)]
LP#1544606: Change i18n Makefile so that there are different dirs for opac vs webstaff

In i18n Makefile, we only have a single directory variable TT2_DATA_DIR.

Remove that variable, and add distinct variables for TT2_OPAC_DATA_DIR and
TT2_WEBSTAFF_DATA_DIR that point to more distinct defined areas.

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1544606: Change docs to more specific locale/opac location
Ben Shum [Thu, 11 Feb 2016 19:54:49 +0000 (14:54 -0500)]
LP#1544606: Change docs to more specific locale/opac location

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1544606: Change apache examples for TPAC to more specific locale/opac location
Ben Shum [Thu, 11 Feb 2016 19:30:57 +0000 (14:30 -0500)]
LP#1544606: Change apache examples for TPAC to more specific locale/opac location

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1544606: Change static entry to variable in config example for locale/staff
Ben Shum [Thu, 11 Feb 2016 19:36:35 +0000 (14:36 -0500)]
LP#1544606: Change static entry to variable in config example for locale/staff

We were using a hardcoded entry for /openils/var here, but this should be a
variable that is altered based on how users configure/build Evergreen.

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1544606: Remove trailing whitespace from sample configs for locale/staff
Ben Shum [Thu, 11 Feb 2016 19:27:20 +0000 (14:27 -0500)]
LP#1544606: Remove trailing whitespace from sample configs for locale/staff

Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoLP#1067823: stamp upgrade script
Galen Charlton [Wed, 17 Feb 2016 16:11:01 +0000 (11:11 -0500)]
LP#1067823: stamp upgrade script

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agoLP#1067823 Add genre facet by default and remove tag 659 from definition
Kathy Lussier [Wed, 17 Feb 2016 13:01:54 +0000 (08:01 -0500)]
LP#1067823 Add genre facet by default and remove tag 659 from definition

Since genre will work well as a facet, add it to the facets in config.tt2 so
that it displays by default. Also removes the 659 MARC field from the genre
definition since it is currently an unassigned tag.

Release notes have been updated to reflect these changes.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agoLP#1067823: add release notes
Galen Charlton [Mon, 2 Nov 2015 19:59:20 +0000 (19:59 +0000)]
LP#1067823: add release notes

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Andrea Neiman <aneiman@kent.lib.md.us>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1067823: follow-up: add back a space
Galen Charlton [Mon, 2 Nov 2015 19:53:53 +0000 (19:53 +0000)]
LP#1067823: follow-up: add back a space

Ensure that there's a space displayed between
each component of a heading coming from a subfield
boundary; this prevents

600 $aHarry Potter$c(Fictional character)

from getting displayed as

Harry Potter(Fictional character)

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Andrea Neiman <aneiman@kent.lib.md.us>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1067823: tweak new identifier|genre index
Galen Charlton [Mon, 2 Nov 2015 19:35:12 +0000 (19:35 +0000)]
LP#1067823: tweak new identifier|genre index

[1] Adjust facet XPath to work for more Pg versions.
[2] Ensure that upgrade script adds stock search
    normalizers.
[3] Make update script provide instructions for
    running a partial reingest.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Andrea Neiman <aneiman@kent.lib.md.us>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1067823: Genre links launch subject search
Mike Rylander [Thu, 15 Oct 2015 21:20:07 +0000 (17:20 -0400)]
LP#1067823: Genre links launch subject search

And genres are not subjects.  So now we will index genres in the identifier
class and teach the tpac to build links appropriately.  Genre is herein
defined as data in tags 655 or 659 (as the tpac currently thinks), restricted
to subfields [abvxyz], per LoC documentation.

To test:

[1] Apply the update and run the partial reingest as suggested
    by the upgrade script.
[2] In the public catalog, navigate to a record that has one
    or more 655 fields.  Click on one of the genre links and
    verify that it retrieves records sharing that genre heading.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Andrea Neiman <aneiman@kent.lib.md.us>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1486592 - Generate prices for concerto dataset.
Chris Sharp [Wed, 16 Dec 2015 12:10:37 +0000 (07:10 -0500)]
LP#1486592 - Generate prices for concerto dataset.

The "concerto" test data needs prices on copies to test
various features. This adds a function to generate a price
when a copy is populated.

To test:

[1] Create a fresh Evergreen database and load the Concerto
    dataset; verify that that vast majority of copies now
    have a price set.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agoLP 1499123: Stamping upgrade script for standing-penalty-ignore-proximity
Kathy Lussier [Tue, 16 Feb 2016 19:57:07 +0000 (14:57 -0500)]
LP 1499123: Stamping upgrade script for standing-penalty-ignore-proximity

Nearly forgot to stamp the upgrade script for lp1499123. While I'm at it,
correcting a small typo found in the release notes.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP 1499123: Add release notes.
Jason Stephenson [Sun, 11 Oct 2015 18:30:11 +0000 (14:30 -0400)]
LP 1499123: Add release notes.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP 1499123: Modify Perl code for csp.ignore_proximity field.
Jason Stephenson [Sat, 26 Sep 2015 15:42:35 +0000 (11:42 -0400)]
LP 1499123: Modify Perl code for csp.ignore_proximity field.

* Add get_org_unit_proximity function to AppUtils.

First, we add a helper function to OpenILS::Application::AppUtils that
returns the proximity value between a "from" org_unit and a "to"
org_unit.  It takes a CStoreEditor and the ids of the two org_units as
arguments.

* Use csp.ignore_proximity in O::A::Circ::Circulate::Circulator.

Modify the check_hold_fulfill_blocks method of the Circulator object
to take the csp.ignore_proximity into account.

The new code first calculates the proximity of the circ_lib and the
copy's circ_lib with the patron's home_ou.  It then modifies the main
query in the function to check if the csp object's ignore_proximity
is null or greater than either of the two calculated proximity values.

* Teach SIP::Patron about csp.ignore_proximity.

We modify SIP::Patron::flesh_user_penalties to not report penalties
within csp.ignore_proximity of the user's home_ou.

In order to have a notion of "here" for the proximity check, we modify
SIP::Patron->new to assign its authtoken argument, if any, to the
CStoreEditor.  We then use this authtoken to retrieve the authsession
user so that we may use the authsession user's ws_ou or home_ou as a
context ou for penalty lookup and filtering based on the
csp.ignore_proximity in flesh_user_penalties. If we're not given the
authtoken, we fall back to using the patron's home_ou and the
penalty's context ou for the proximity lookup.

This assumes, of course, that the authsession user's ws_ou or home_ou
have a logical relationship with the desired transaction ou.  For most
self-checks this will likely be true.  For other uses of the SIP
protocol, this is less likely to be true.

* Add Perl live tests.

Add tests for basic checkout and hold functionality as well as for
the OpenILS::SIP::Patron->flesh_user_penalties() changes.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP 1499123: Add ignore_proximity to config.standing_penalty.
Jason Stephenson [Fri, 25 Sep 2015 00:35:50 +0000 (20:35 -0400)]
LP 1499123: Add ignore_proximity to config.standing_penalty.

This commit adds the integer column ignore_proximity to the
config.standing_penalty table.  It also adds the column to the
csp class entry in the IDL.

It also modifies the action.hold_permit_test() function from
110.hold_matrix.sql to use the ignore_proximity field from
config.standing_penalty when checking the user's penalties to see if
they block the hold.

We also modify the action.item_user_circ_test() function from
100.circ_matrix.sql to use the ignore_proximity field from the
config.standing_penalty table when checking to see if the user's
penalties block the circulation.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1429268 credit card payment address fall-thru
Bill Erickson [Fri, 6 Mar 2015 22:18:21 +0000 (17:18 -0500)]
LP#1429268 credit card payment address fall-thru

When a patron has no mailing address linked, attempt to read address
data from the patron's billing address.  Similarly, if all address
fields are properly set by the API caller, except the country, and the
patron has no addresses, attempt to determine the country from org unit
settings.

If insufficient address data is provided or divined, return an invalid
params Event (similar to other CC failures).

To test:

[1] Create a patron record that has no mailing address but does
    have a billing address.  Perform or simulate a credit card
    payment; it shoudl fail with an internal error.
[2] Apply the patch and repeat step 1; this time, the payment
    attempt should succeed and use the billing address.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agoLP#1522604: Remove red alert style for non-cataloged checkouts
Kathy Lussier [Tue, 15 Dec 2015 13:39:27 +0000 (08:39 -0500)]
LP#1522604: Remove red alert style for non-cataloged checkouts

The non-cataloged checkouts in the patron summary had a red alert style
applied when there was a lost item count on the patron record. This branch
removes any alert styling since we don't need to highlight non-cataloged
checkouts.

Test plan:
Pre-patch, retrieve a patron record with lost transactions in the web client.
The non-cataloged count in the patron summary will be red. Apply the patch.
The count will no longer be red.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agoLP#1240657 - Creating and Deleting Closed Dates permissions wrong.
Josh Stompro [Mon, 9 Nov 2015 02:51:04 +0000 (20:51 -0600)]
LP#1240657 - Creating and Deleting Closed Dates permissions wrong.

The code referenced two permissions that didn't exist
CREATE_CLOSEING and DELETE_CLOSEING.  Should be CREATE_ORG_UNIT_CLOSING,
and DELETE_ORG_UNIT_CLOSING.

[RM note: the affected methods don't appear to be in use, however]

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8 years agolp1422802 Release notes entry
Kathy Lussier [Tue, 9 Feb 2016 04:05:03 +0000 (23:05 -0500)]
lp1422802 Release notes entry

Release notes entry for more visible parts feature.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
8 years agolp1422802: Improve visibility of parts on Place Holds screen
Kathy Lussier [Sat, 14 Feb 2015 19:10:54 +0000 (14:10 -0500)]
lp1422802: Improve visibility of parts on Place Holds screen

Users often miss the list of parts on the Place Holds screen, leading to
many title-level holds on records where only one or two libraries have
'unparted' copies. This branch adds some styling to add padding around the
parts selector and to bold the Select a Part text. Many thanks to Christine
Morgan whose custom work at NOBLE served as an inspiration for this styling.

The branch also adds a new config.tt2 option to display parts with
radio buttons instead of a select menu so that all of the parts will display on
the screen. With this option, no parts are pre-selected, forcing the users to
actively choose a part.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
8 years agoLP#1526547 Re-broaden backdate note setting
Dan Wells [Tue, 9 Feb 2016 15:22:46 +0000 (10:22 -0500)]
LP#1526547 Re-broaden backdate note setting

The previous commit missed a case where we still want the backdate
message to appear.  Let's recentralize it, but at a different level.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1526547 Improve note setting for backdates
Dan Wells [Thu, 28 Jan 2016 19:49:42 +0000 (14:49 -0500)]
LP#1526547 Improve note setting for backdates

The backdate note was the default note for voiding and adjusting, but
this proved to be an unexpected default.

Let's set the note only where we need it, and also genericize the
wording to cover both voiding and adjusting.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1526547 Prevent bogus notes when adjusting lost/lod overdues
Dan Wells [Fri, 14 Dec 2012 18:39:21 +0000 (13:39 -0500)]
LP#1526547 Prevent bogus notes when adjusting lost/lod overdues

If you void/adjust an overdue, but don't supply a reason, the code
automatically adds "VOIDED FOR BACKDATE" to the billing note. This is
obviously wrong for overdues adjusted or voided due to lost (or long
overdue) processing.

This commit simply adds a more appropriate note.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1516867: set limit on when HTML report output sorting
Galen Charlton [Fri, 20 Nov 2015 21:26:05 +0000 (21:26 +0000)]
LP#1516867: set limit on when HTML report output sorting

To avoid taking an excessive amount of time to render an
HTML report or sort its values, dynamic sorting is enabled
only when there are at most 10,000 rows of output.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
8 years agoLP#1516867 Make HTML report tables sortable
Dan Scott [Tue, 17 Nov 2015 03:20:28 +0000 (22:20 -0500)]
LP#1516867 Make HTML report tables sortable

Using the sortable JavaScript library from https://github.com/hubspot/sortable
(MIT license), we can make HTML reports much more usable by making them
sortable by clicking on the column headers. This should save some downloading
of CSV or Excel versions of the reports.

To test:

[1] Create or use a report template and generate an HTML report; ensure
    that the report has at most 10,000 rows of output.
[2] View the report output and click on one of the column headings;
    verify that the table sorts itself by that column's values.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
8 years agowebstaff: add angular-file-saver to test manifest
Galen Charlton [Wed, 3 Feb 2016 17:17:30 +0000 (12:17 -0500)]
webstaff: add angular-file-saver to test manifest

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
8 years agoDocs: small leveloffset fix for root.txt
Yamil Suarez [Wed, 3 Feb 2016 04:35:53 +0000 (23:35 -0500)]
Docs: small leveloffset fix for root.txt

Signed-off-by: Yamil Suarez <yamil@yamil.com>
8 years agoDocs: web client copy buckets documentation
Jennifer Pringle [Fri, 29 Jan 2016 03:24:59 +0000 (22:24 -0500)]
Docs: web client copy buckets documentation

Signed-off-by: Yamil Suarez <yamil@yamil.com>
8 years agowebstaff: fix more cases where new copies weren't being saved
Galen Charlton [Tue, 2 Feb 2016 00:53:43 +0000 (19:53 -0500)]
webstaff: fix more cases where new copies weren't being saved

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: work around race condition in vol/copy editor
Galen Charlton [Tue, 2 Feb 2016 00:19:46 +0000 (19:19 -0500)]
webstaff: work around race condition in vol/copy editor

Fix (or workaround) issue whereby the volume/copy editor
could fail to select a copy's current stat cats.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: clean up console noise
Galen Charlton [Mon, 1 Feb 2016 16:43:09 +0000 (11:43 -0500)]
webstaff: clean up console noise

Ensure that if a default stat cat OU filter is not set,
that errors aren't logged when creating a new volume/copy.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix issue that prevent new copies from being added
Galen Charlton [Fri, 29 Jan 2016 23:38:53 +0000 (18:38 -0500)]
webstaff: fix issue that prevent new copies from being added

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add copy ID column to holdings table and volcopy editor
Galen Charlton [Thu, 28 Jan 2016 23:33:34 +0000 (18:33 -0500)]
webstaff: add copy ID column to holdings table and volcopy editor

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add circulate as MARC type column to holdings table
Galen Charlton [Thu, 28 Jan 2016 23:21:57 +0000 (18:21 -0500)]
webstaff: add circulate as MARC type column to holdings table

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add prefix, suffix, and parts columns to holdings table
Galen Charlton [Thu, 28 Jan 2016 23:06:19 +0000 (18:06 -0500)]
webstaff: add prefix, suffix, and parts columns to holdings table

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: ensure that volcopy editor saves copy part maps
Galen Charlton [Thu, 28 Jan 2016 22:46:36 +0000 (17:46 -0500)]
webstaff: ensure that volcopy editor saves copy part maps

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add circulating library as optional column in holdings view
Galen Charlton [Thu, 28 Jan 2016 19:46:15 +0000 (14:46 -0500)]
webstaff: add circulating library as optional column in holdings view

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: copy template fix
Galen Charlton [Thu, 28 Jan 2016 19:32:56 +0000 (14:32 -0500)]
webstaff: copy template fix

This patches fixes applying the volume portion of a
template when in the copy template tab of the volume/copy
editor.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix updating stat cats in the volume/copy editor
Galen Charlton [Thu, 28 Jan 2016 19:13:27 +0000 (14:13 -0500)]
webstaff: fix updating stat cats in the volume/copy editor

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: expose ascecm to open-ils.pcrud
Galen Charlton [Thu, 28 Jan 2016 19:11:08 +0000 (14:11 -0500)]
webstaff: expose ascecm to open-ils.pcrud

Doing this allows the volume/copy editor to use
pcrud to retrieve copies with stat_cat_entries fleshed.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix selection of stat cats in copy editor and templates
Galen Charlton [Thu, 28 Jan 2016 17:44:37 +0000 (12:44 -0500)]
webstaff: fix selection of stat cats in copy editor and templates

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix setting default copy status for new items
Galen Charlton [Wed, 27 Jan 2016 22:36:37 +0000 (17:36 -0500)]
webstaff: fix setting default copy status for new items

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: consolidate code for generate new copies
Galen Charlton [Wed, 27 Jan 2016 21:38:33 +0000 (16:38 -0500)]
webstaff: consolidate code for generate new copies

This patch does a bit of refactoring to get rid of
some copy-and-paste code that creates new copies
in the volume/copy editor.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix console noise spawned by OU selector
Galen Charlton [Tue, 26 Jan 2016 22:44:32 +0000 (17:44 -0500)]
webstaff: fix console noise spawned by OU selector

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: tweak setting default classification scheme in volcopy editor
Galen Charlton [Tue, 26 Jan 2016 22:34:03 +0000 (17:34 -0500)]
webstaff: tweak setting default classification scheme in volcopy editor

With this patch, the volume/copy editor creation default for
classification scheme now can have a value of "Use Library Setting".
If this is in effect, the default classification scheme for new
volumes is taken from the library setting.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add more volume transfer options
Galen Charlton [Tue, 26 Jan 2016 22:01:21 +0000 (17:01 -0500)]
webstaff: add more volume transfer options

The volume/copy editor now has the following new actions:

  * (Transfer) Volumes to Previously Marked Record
  * (Transfer) Volumes to Previously Marked Record and Library

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add a Transfer Copies to Previously Marked Library action
Galen Charlton [Tue, 26 Jan 2016 21:13:27 +0000 (16:13 -0500)]
webstaff: add a Transfer Copies to Previously Marked Library action

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: grab default call number from bib when creating volume
Galen Charlton [Tue, 26 Jan 2016 19:06:57 +0000 (14:06 -0500)]
webstaff: grab default call number from bib when creating volume

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: save copy templates now unconditional
Galen Charlton [Tue, 26 Jan 2016 18:06:14 +0000 (13:06 -0500)]
webstaff: save copy templates now unconditional

The save copy templates button in the volume/copy editor
no longer requires that a working template be active; this
way, users can save the set of templates after an import
without having to select one of them first.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: implement import/export of copy templates
Galen Charlton [Mon, 25 Jan 2016 23:34:54 +0000 (18:34 -0500)]
webstaff: implement import/export of copy templates

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add egJsonExporter directive
Galen Charlton [Mon, 25 Jan 2016 23:30:48 +0000 (18:30 -0500)]
webstaff: add egJsonExporter directive

This directive is used to allow a piece of JSON
to be saved to the user's filesystem.  For example:

<span eg-json-exporter container="foo" default-file-name="example.json">Export</span>

specifies a button that, when click, allows the user to save
the contents of the scope variable foo.  The dialog that
appears will use "example.json" as the default filename.

This also adds a new dependency, the MIT-licensed
 angular-file-saver service written by Philipp Alferov:

https://alferov.github.io/angular-file-saver/

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: style file input buttons more nicely
Galen Charlton [Mon, 25 Jan 2016 20:41:52 +0000 (15:41 -0500)]
webstaff: style file input buttons more nicely

Using technique devised by Cory LaViska per
http://www.abeautifulsite.net/whipping-file-inputs-into-shape-with-bootstrap-3/

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fixed client-side sorting of names in add-to-bucket dialog
Galen Charlton [Thu, 21 Jan 2016 22:42:47 +0000 (17:42 -0500)]
webstaff: fixed client-side sorting of names in add-to-bucket dialog

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: alphabetize status and location dropdowns in copy-editor
Galen Charlton [Thu, 21 Jan 2016 22:31:46 +0000 (17:31 -0500)]
webstaff: alphabetize status and location dropdowns in copy-editor

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: display floating group correctly in item status
Galen Charlton [Thu, 21 Jan 2016 22:20:43 +0000 (17:20 -0500)]
webstaff: display floating group correctly in item status

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add copy editor support for floating field
Galen Charlton [Thu, 21 Jan 2016 22:15:53 +0000 (17:15 -0500)]
webstaff: add copy editor support for floating field

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: rework Local Administration
Jason Etheridge [Mon, 4 Jan 2016 20:51:14 +0000 (15:51 -0500)]
webstaff: rework Local Administration

maintain links and labels as a data structure

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: tweak how element IDs in MARC editor are generated
Galen Charlton [Thu, 29 Oct 2015 23:24:35 +0000 (23:24 +0000)]
webstaff: tweak how element IDs in MARC editor are generated

For new records (or records that for whatever reason lack
a 901 field), use '0' as a dummy value for the record
ID when constructing element IDs (e.g., r0f5, r0f10sf0value,
etc.).  This fixes a problem where setCaret() couldn't
successfully change focus after adding a field or subfield
to a new record.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: users with negative balance
Bill Erickson [Mon, 5 Oct 2015 02:05:58 +0000 (22:05 -0400)]
webstaff: users with negative balance

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Wire up statcat filtering in item attribute editor
Mike Rylander [Mon, 26 Oct 2015 16:13:45 +0000 (12:13 -0400)]
webstaff: Wire up statcat filtering in item attribute editor

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: open title from item status in a new tab
Mike Rylander [Fri, 23 Oct 2015 20:34:16 +0000 (16:34 -0400)]
webstaff: open title from item status in a new tab

Also, iindicate that will happen with an icon by the title link

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Move new Vol Transfer UI menu option to "misc" section to avoid confusion
Mike Rylander [Fri, 23 Oct 2015 20:25:19 +0000 (16:25 -0400)]
webstaff: Move new Vol Transfer UI menu option to "misc" section to avoid confusion

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Use the record id to fetch the summary record data in item status
Mike Rylander [Thu, 22 Oct 2015 20:03:26 +0000 (16:03 -0400)]
webstaff: Use the record id to fetch the summary record data in item status

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: for selected grids, allow display of 10000 items
Mike Rylander [Thu, 22 Oct 2015 15:42:15 +0000 (11:42 -0400)]
webstaff: for selected grids, allow display of 10000 items

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: enable copy edit link from opac view
Mike Rylander [Wed, 21 Oct 2015 21:53:21 +0000 (17:53 -0400)]
webstaff: enable copy edit link from opac view

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agoLP#1508477: bump up minimum version of angular-hotkeys
Galen Charlton [Wed, 21 Oct 2015 17:39:08 +0000 (17:39 +0000)]
LP#1508477: bump up minimum version of angular-hotkeys

Version 1.3.0 of angular-hotkeys is now required, as this
is the version that introduces the ability the specify
that hotkeys can be used even when inputs, selects,
and textareas have focus.

After applying the patch (and doing a bower update,
grunt uglify, and install), one can test hotkeys in
the web staff client by (for example):

- starting from the home page and hitting F1 to
  get to patron search by barcode
- hitting F5 to get the item status page

Note that if the page embeds the OPAC or a Dojo
interface using an egEmbedFrame, if any element
of the iframe's content has focus, the hotkeys won't
work -- that will be the subject of another patch.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: add another option for choosing volume transfer library
Galen Charlton [Tue, 20 Oct 2015 20:08:44 +0000 (20:08 +0000)]
webstaff: add another option for choosing volume transfer library

The actions menu on the holdings view now has two ways of
specifying a library to transfer volumes to:

 * Library as Volume Transfer Destination

   Pops up a modal with a library selector.

 * Library from Selection as Volume Transfer Destination

   Uses the currently selected volume's owning
   library to specify the target library.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: keep $scope.{pre,suf}fix as acnp/acns objects
Galen Charlton [Tue, 20 Oct 2015 19:39:10 +0000 (19:39 +0000)]
webstaff: keep $scope.{pre,suf}fix as acnp/acns objects

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: sort prefix/suffix selectors by sortkey
Galen Charlton [Tue, 20 Oct 2015 19:12:44 +0000 (19:12 +0000)]
webstaff: sort prefix/suffix selectors by sortkey

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: update volume prefix/suffix selectors
Galen Charlton [Tue, 20 Oct 2015 19:08:33 +0000 (19:08 +0000)]
webstaff: update volume prefix/suffix selectors

Ensuring that when the owning library changes that
the selectors for the volume prefix and suffix
refelect the options available to that OU.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client: remove pending label from closed dates
Bill Erickson [Mon, 5 Oct 2015 01:35:25 +0000 (21:35 -0400)]
webstaff: browser client: remove pending label from closed dates

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client: Remove closed dates editor XUL-y requirements
Bill Erickson [Mon, 5 Oct 2015 01:34:01 +0000 (21:34 -0400)]
webstaff: browser client: Remove closed dates editor XUL-y requirements

Replace JSAN date functions with manual, inline date formatting
functions.  Remove JSAN and XUL constants requirements.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client: misc. new links
Bill Erickson [Wed, 30 Sep 2015 01:57:40 +0000 (21:57 -0400)]
webstaff: browser client: misc. new links

field documentation
group penalty threshold
hold policies
library settings edito
noncat types
action/trigger
search filter group
stat cats editor

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client local admin additions
Bill Erickson [Sun, 9 Aug 2015 22:59:00 +0000 (18:59 -0400)]
webstaff: browser client local admin additions

* copy locations editor
* copy locations groups
* copy locations order
* copy template editor
* auto-print settings (new UI)

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser: closed dates / research missing dump() func
Bill Erickson [Wed, 29 Jul 2015 13:33:26 +0000 (09:33 -0400)]
webstaff: browser: closed dates / research missing dump() func

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client local admin re-org 2
Bill Erickson [Sat, 25 Jul 2015 18:11:00 +0000 (14:11 -0400)]
webstaff: browser client local admin re-org 2

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client local admin re-org; adding new links
Bill Erickson [Sat, 25 Jul 2015 18:10:37 +0000 (14:10 -0400)]
webstaff: browser client local admin re-org; adding new links

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client: starting local admin landing page
Bill Erickson [Fri, 24 Jul 2015 02:35:47 +0000 (22:35 -0400)]
webstaff: browser client: starting local admin landing page

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: browser client: age to lost UI
Bill Erickson [Mon, 20 Jul 2015 01:38:07 +0000 (21:38 -0400)]
webstaff: browser client: age to lost UI

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Browser client: integrate address alert HTML UI
Bill Erickson [Wed, 15 Jul 2015 02:04:39 +0000 (22:04 -0400)]
webstaff: Browser client: integrate address alert HTML UI

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Typo in method name for volume transfer
Mike Rylander [Mon, 19 Oct 2015 13:46:42 +0000 (09:46 -0400)]
webstaff: Typo in method name for volume transfer

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Label field "Owning Library" instead of "Library" in call number area
Mike Rylander [Mon, 19 Oct 2015 13:45:50 +0000 (09:45 -0400)]
webstaff: Label field "Owning Library" instead of "Library" in call number area

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: teach egOrgSelector how to be sticky
Galen Charlton [Fri, 16 Oct 2015 22:21:14 +0000 (22:21 +0000)]
webstaff: teach egOrgSelector how to be sticky

In order to make the org unit selector in the holdings view
to be "sticky", the egOrgSelector directive now accepts an
optional stickySetting attribute specifying the name of a
preference key for storing the last selected org unit.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: when FF input gains focus, select contents
Galen Charlton [Fri, 16 Oct 2015 18:02:39 +0000 (18:02 +0000)]
webstaff: when FF input gains focus, select contents

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: fix org unit selectors in vol/copy editor
Mike Rylander [Thu, 15 Oct 2015 19:36:56 +0000 (15:36 -0400)]
webstaff: fix org unit selectors in vol/copy editor

Restrict owning and circ lib selection to only those orgs
that have can_have_vols true for their org type

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: Force refresh from server on copy delete
Mike Rylander [Wed, 14 Oct 2015 16:03:28 +0000 (12:03 -0400)]
webstaff: Force refresh from server on copy delete

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: be explicit about fast-add availability
Mike Rylander [Tue, 13 Oct 2015 20:00:48 +0000 (16:00 -0400)]
webstaff: be explicit about fast-add availability

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: use activateItem to open the vol/copy editor
Mike Rylander [Tue, 13 Oct 2015 18:06:03 +0000 (14:06 -0400)]
webstaff: use activateItem to open the vol/copy editor

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: typo preventing a setting from working
Mike Rylander [Tue, 13 Oct 2015 16:24:55 +0000 (12:24 -0400)]
webstaff: typo preventing a setting from working

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: inform on record save failure, and mark the page clean on successful save
Mike Rylander [Tue, 13 Oct 2015 16:24:29 +0000 (12:24 -0400)]
webstaff: inform on record save failure, and mark the page clean on successful save

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: make sure copy_notes() contains an array before pushing to it
Mike Rylander [Tue, 13 Oct 2015 15:41:12 +0000 (11:41 -0400)]
webstaff: make sure copy_notes() contains an array before pushing to it

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: improve styling of aligned grid columns to avoid cell overlap
Mike Rylander [Tue, 13 Oct 2015 15:30:48 +0000 (11:30 -0400)]
webstaff: improve styling of aligned grid columns to avoid cell overlap

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: highlight currently active position in phys char wizard
Galen Charlton [Mon, 12 Oct 2015 21:12:08 +0000 (21:12 +0000)]
webstaff: highlight currently active position in phys char wizard

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
8 years agowebstaff: allow batch copy attribute editing across bib records
Mike Rylander [Mon, 12 Oct 2015 20:10:04 +0000 (16:10 -0400)]
webstaff: allow batch copy attribute editing across bib records

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