working/Evergreen.git
3 years agoLP#1583729 Item status screen column options do not include age protection
Michele Morgan [Tue, 16 Aug 2016 18:47:43 +0000 (14:47 -0400)]
LP#1583729 Item status screen column options do not include age protection

Adds the age_protect field to several missing copy interfaces:

XUL client:

- Item status list view column picker
- Item status alternate view
- Holdings Maintenance column picker

Web client:

- Item status alternate view
- Holdings view column picker

Also addresses an issue with displaying the circ modifier in some item
interfaces.

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1527694 Webstaff egHatch supports 'LoginSession' storage
Bill Erickson [Fri, 5 Aug 2016 16:39:54 +0000 (12:39 -0400)]
LP#1527694 Webstaff egHatch supports 'LoginSession' storage

Adds support for a class of cached value (AKA "LoginSession" items)
that are cleared when either the user logs out or the browser is closed.
Values are stored as cookies.

Authentication tokens and "retrieve last patron" data are now stored as
"LoginSession" items.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1527694 Webstaff clear last patron
Bill Erickson [Thu, 4 Aug 2016 16:34:56 +0000 (12:34 -0400)]
LP#1527694 Webstaff clear last patron

Store most recent patron ID via cookie instead of localStorage so the
value can expire when then browser is closed.

Adds angular-cookies (ngCookies) dependency.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Conflicts:
Open-ILS/web/js/ui/default/staff/bower.json

3 years agoLP#1522635 Webstaff lost (etc.) checkout completes
Bill Erickson [Thu, 4 Aug 2016 21:56:32 +0000 (17:56 -0400)]
LP#1522635 Webstaff lost (etc.) checkout completes

Resolves an issue in the browser client where checkout of LOST
(and other non status='checked out' copies) failed to show the
open-circ-exists dialog.  In short, when searching for an existing
open circulation, look for any open circulation linked to the copy,
regardless of the status of the copy.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1464350 Webstaff home page catalog search
Bill Erickson [Thu, 4 Aug 2016 19:22:22 +0000 (15:22 -0400)]
LP#1464350 Webstaff home page catalog search

Search the catalog directly from the home/splash page in the browser
client.

A side effect of this commit is that it's now possible to jump directly
to a set of search results in the embedded catalog by going to:

/eg/staff/cat/catalog/results?<query-params>

E.g.

/eg/staff/cat/catalog/results?query=scores&qtype=subject

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agostart adding form validation to receipt template editor
Galen Charlton [Wed, 10 Aug 2016 16:10:58 +0000 (12:10 -0400)]
start adding form validation to receipt template editor

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoIgnore null fleshed objects in autofleshing grid columns
Mike Rylander [Mon, 8 Aug 2016 21:05:10 +0000 (17:05 -0400)]
Ignore null fleshed objects in autofleshing grid columns

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoRepair output popup, and add Reports to the splash page
Mike Rylander [Mon, 8 Aug 2016 19:09:43 +0000 (15:09 -0400)]
Repair output popup, and add Reports to the splash page

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoReport Templates!
Mike Rylander [Mon, 8 Aug 2016 18:15:09 +0000 (14:15 -0400)]
Report Templates!

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLet the legacy interface do the right thing when embedded in the web client
Mike Rylander [Mon, 8 Aug 2016 18:10:32 +0000 (14:10 -0400)]
Let the legacy interface do the right thing when embedded in the web client

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agotoward ou type dropdown
Jason Etheridge [Mon, 11 Jul 2016 19:57:48 +0000 (15:57 -0400)]
toward ou type dropdown

3 years agochild node creation
Jason Etheridge [Mon, 11 Jul 2016 18:52:53 +0000 (14:52 -0400)]
child node creation

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agochange to delete to remove, since JS uses delete
Jason Etheridge [Mon, 11 Jul 2016 15:59:06 +0000 (11:59 -0400)]
change to delete to remove, since JS uses delete

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agoUI tweak and org deletion
Jason Etheridge [Mon, 11 Jul 2016 15:25:00 +0000 (11:25 -0400)]
UI tweak and org deletion

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agotoast, comments, logging
Jason Etheridge [Mon, 11 Jul 2016 14:20:43 +0000 (10:20 -0400)]
toast, comments, logging

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agoprogrammatic selection of tree node still not working
Jason Etheridge [Fri, 10 Jun 2016 18:22:45 +0000 (14:22 -0400)]
programmatic selection of tree node still not working

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agorefactor
Jason Etheridge [Fri, 10 Jun 2016 18:17:13 +0000 (14:17 -0400)]
refactor

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agogetting changes to stick within a session
Jason Etheridge [Fri, 10 Jun 2016 18:16:22 +0000 (14:16 -0400)]
getting changes to stick within a session

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agobetter stub out the other tabs, and try to select CONS by default
Jason Etheridge [Fri, 10 Jun 2016 16:37:01 +0000 (12:37 -0400)]
better stub out the other tabs, and try to select CONS by default

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agoToward an Angular replacement for Org Units Conify
Jason Etheridge [Wed, 11 May 2016 19:17:47 +0000 (15:17 -0400)]
Toward an Angular replacement for Org Units Conify

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agowebstaff: add admin interface for MARC tag tables
Galen Charlton [Fri, 10 Jun 2016 22:21:31 +0000 (18:21 -0400)]
webstaff: add admin interface for MARC tag tables

This is a simple interface using eg-edit-fm-record to start;
more work will be required to better deal with the semantics
for overriding tag definitions at various levels of the OU
hierarchy.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: a couple strings for a generic record deletion dialog
Galen Charlton [Fri, 10 Jun 2016 22:19:17 +0000 (18:19 -0400)]
webstaff: a couple strings for a generic record deletion dialog

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: new directive: egEditFmRecord
Galen Charlton [Fri, 10 Jun 2016 22:14:20 +0000 (18:14 -0400)]
webstaff: new directive: egEditFmRecord

This implements a generic IDL record editor widget:

<eg-edit-fm-record
  idl-class            = "xyz"
  mode                 = "update"
  record-id            = "223"
  hidden-fields        = "bar,baz"
  readonly-fields      = "quux"
  required-fields      = "foo"
  is-required-override = "bundle_of_custom_functions"
  on-save              = "on_save_handler"
  on-cancel            = "on_cancel"
></eg-edit-fm-record>

The mode can be either "create" or "update"; if it is "create",
then it is not necessary or desired to pass a record-id.

Currently eg-edit-fm-record expects to be invoked from
inside a uibModal.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoIDL improvements for classes releated to MARC tag tables
Galen Charlton [Fri, 10 Jun 2016 16:15:18 +0000 (12:15 -0400)]
IDL improvements for classes releated to MARC tag tables

In the course of building the admin interface for the
MARC tag tables, some deficiencies in the IDL were
run across. This patch fixes them.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: fix typo in field name
Galen Charlton [Fri, 13 May 2016 15:51:42 +0000 (11:51 -0400)]
webstaff: fix typo in field name

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoLP#1585369: Angular broke my copy editor!
Mike Rylander [Wed, 25 May 2016 17:14:44 +0000 (13:14 -0400)]
LP#1585369: Angular broke my copy editor!

It seems Angular 1.5 is either less flexible or less forgiving in its
ng-repeat implementation, and does not like an orderBy filter on object
iterators.  Removing that, and the track by clause, allows the holdings
editor to render properly.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agowebstaff: circ audio alerts
Bill Erickson [Wed, 18 May 2016 02:09:34 +0000 (22:09 -0400)]
webstaff: circ audio alerts

Signed-off-by: Bill Erickson <berickxx@gmail.com>
3 years agowebstaff: audio disable and testing options
Bill Erickson [Tue, 17 May 2016 03:16:34 +0000 (23:16 -0400)]
webstaff: audio disable and testing options

For workstation admin UI.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
3 years agowebstaff: egAudio HTML5 audio service
Bill Erickson [Sun, 15 May 2016 16:51:24 +0000 (12:51 -0400)]
webstaff: egAudio HTML5 audio service

egCore.audio.play('audio.event.dot.path');

Service to look up audio URL's by key name.  Supports fall-thru behavior
where 'foo.bar.baz' will fall-thru to 'foo.bar' and 'foo' depending on
whether an audio file is avaialable.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
3 years agoLP#1581126: webstaff: make egDateInput respect format.date OUS
Galen Charlton [Thu, 12 May 2016 16:27:11 +0000 (12:27 -0400)]
LP#1581126: webstaff: make egDateInput respect format.date OUS

This patch makes the egDateInput directive fetch the
date format from the format.date library setting. The
directive also now accepts a dateFormat attribute for cases
where there is a reason to override the library setting.

If no format is set via library setting or in how the
directive is invoked, the format defaults to "mediumDate",
e.g., "May 2, 1999".

To test:

[1] Open the webstaff patron registration form. Verify that
    date widgets display the date in the format that
    corresponds to the value of the format.date library setting
    for the current work station, or (if the library setting
    is not set, "Month day, year".

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoAdd images for angular-tree-control to bower
Jason Etheridge [Thu, 12 May 2016 15:51:09 +0000 (11:51 -0400)]
Add images for angular-tree-control to bower

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
3 years agowebstaff: tweak legacy OU editor
Galen Charlton [Wed, 11 May 2016 20:31:33 +0000 (16:31 -0400)]
webstaff: tweak legacy OU editor

This adds a CSS hack so that the right-hand pane of
the legacy OU editor is displayed when embedded in
the web staff client.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: tweak permission group editor
Galen Charlton [Wed, 11 May 2016 20:30:34 +0000 (16:30 -0400)]
webstaff: tweak permission group editor

This adds a couple hackish formating tweaks so that
the permission group editor works when embedded
in the web staff client.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: add server administration page
Galen Charlton [Wed, 11 May 2016 17:17:55 +0000 (13:17 -0400)]
webstaff: add server administration page

This patch adds a landing page for Server Administration and
code to embed all of the admin pages available under Serer
Administration in the XUL staff client.

TODO:

* fix the permission groups editor so that it works
  when embedded in the web staff client
* refactor admin/local/app.js and admin/server/app.js to
  unify some of the copy and pasting
* replace the embedded legacy OU editor with a new
  angular one
* fixes some CSS issues that make text hard to read in
  a few places

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: work log: various improvements
Galen Charlton [Wed, 4 May 2016 19:04:23 +0000 (15:04 -0400)]
webstaff: work log: various improvements

* Don't use $location.path() to generate a URL for when opening
  a new window, as that can cause the parent window to reset
  itself.
* Fix the refresh button
* Add support for paging through worklog entries
* Don't prematurely resolve the promise that is
  feeding rows to the grid
* Ensure that entries are displayed in timestamp order

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: egWorkLog service and Work Log UI
Jason Etheridge [Fri, 4 Dec 2015 16:06:56 +0000 (11:06 -0500)]
webstaff: egWorkLog service and Work Log UI

under Administration -> Local Administration

The original XUL feature starts here: 29d1b357eef061bb3698e4ce0506eb93b63421be

Make sure egCore from the calling interface is pulling in these org unit
settings:

ui.admin.work_log.max_entries
ui.admin.patron_log.max_entries

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: transit list: improve styling of form
Galen Charlton [Thu, 5 May 2016 20:35:25 +0000 (16:35 -0400)]
webstaff: transit list: improve styling of form

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: transit list: don't reset form
Galen Charlton [Wed, 4 May 2016 19:01:50 +0000 (15:01 -0400)]
webstaff: transit list: don't reset form

$location.path(foo) is a setter, and should not
be used to calculate a URL for opening a new window
unless you also want to refresh the source page.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: Transit List
Jason Etheridge [Thu, 1 Oct 2015 11:23:44 +0000 (07:23 -0400)]
webstaff: Transit List

under Administration -> Local Administration

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agowebstaff: links to Surveys, Transit List, Work Log
Jason Etheridge [Tue, 5 Jan 2016 16:23:36 +0000 (11:23 -0500)]
webstaff: links to Surveys, Transit List, Work Log

Under Administration -> Local Administration

Links to the existing Surveys interface; following commits implement
the new Transit List and Work Log interfaces.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agolp1592934 removed lines referencing edition fields 534 and 775. These fields refer...
Jim Keenan [Fri, 12 Aug 2016 18:51:28 +0000 (14:51 -0400)]
lp1592934 removed lines referencing edition fields 534 and 775. These fields refer to other, different editions of the work and not to the work actually being returned.

Signed-off-by: Jim Keenan <jkeenan@cwmars.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1587639: stamp schema upgrade
Galen Charlton [Fri, 12 Aug 2016 18:15:29 +0000 (14:15 -0400)]
LP#1587639: stamp schema upgrade

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoLP#1612054: unbreak test case now that SSN is no longer an ID type
Galen Charlton [Thu, 11 Aug 2016 12:20:34 +0000 (08:20 -0400)]
LP#1612054: unbreak test case now that SSN is no longer an ID type

The patch for bug 1566016 broke the live_t/17-lp1579225_new_patron_passwords.t
test, as it used a patron ID type that is no longer in the seed
data. This patch fixes the test.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
3 years agoLP#1611495 Don't use .xml for MARC21 files in Vandelay Export
Dan Wells [Tue, 9 Aug 2016 19:50:50 +0000 (15:50 -0400)]
LP#1611495 Don't use .xml for MARC21 files in Vandelay Export

The new 'Export Non-imported Records' feature in Vandelay (see bug
LP#1548147) was tweaked before merge to export MARC21 files by default
(rather than MARC-XML). However, the file save dialog still defaults to
(and filters by) ".xml" for the file extension. This is confusing and
otherwise problematic.

Let's go ahead and save the export using a ".mrc" extension instead.
While not an official extension (as far as I know), it is widely used,
easy to understand, and far less likely to cause issues with other
software.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3 years agoLP#1609556: (follow-up) restore previous 852$d output
Galen Charlton [Wed, 10 Aug 2016 14:26:06 +0000 (10:26 -0400)]
LP#1609556: (follow-up) restore previous 852$d output

The previous patch had a side-effect of changing the 852$d
value from the circ library's shortname to its long name. This
patch restores the previous behavior.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1587639 Avoid double-update of editor/edit_date
Mike Rylander [Thu, 4 Aug 2016 18:00:17 +0000 (14:00 -0400)]
LP#1587639 Avoid double-update of editor/edit_date

Look for an editor first, and if not found just use the existing values.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
3 years agoLP#1587639 Vand. authority updates release notes
Bill Erickson [Wed, 1 Jun 2016 15:55:27 +0000 (11:55 -0400)]
LP#1587639 Vand. authority updates release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1587639 Vand. authority updates PGTAP
Bill Erickson [Wed, 1 Jun 2016 15:51:00 +0000 (11:51 -0400)]
LP#1587639 Vand. authority updates PGTAP

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1587639 Vandelay authority update editor/edit_date
Bill Erickson [Wed, 1 Jun 2016 14:40:45 +0000 (10:40 -0400)]
LP#1587639 Vandelay authority update editor/edit_date

Update the editor and edit_date of authority records when modified by
Vandelay merge/overlay.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoStamping upgrade for bib_source-in-901
Mike Rylander [Tue, 9 Aug 2016 18:55:30 +0000 (14:55 -0400)]
Stamping upgrade for bib_source-in-901

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1037553: bibliographic record source now copied to 901$s
Galen Charlton [Wed, 26 Aug 2015 17:59:37 +0000 (17:59 +0000)]
LP#1037553: bibliographic record source now copied to 901$s

If a bibliographic record has a source set, the name of that source
is now copied to the 901$s whenever the record is created or updated.
This allows the source to be used for record matching and MARC
field queries.

To test:

[1] Create or import a bibliographic record and ensure that its
    source is set to a non-null value.
[2] Inspect the record in MARC format view and verify that its
    901 field now has a subfield $s containing the name of the
    source.
[3] Use pg_prove to run the pgTAP test added by this patch
    and verify that the test passes.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP 1503867: Use ws_ou in open-ils.circ.copy_transit.receive.
Jason Stephenson [Thu, 8 Oct 2015 13:39:34 +0000 (09:39 -0400)]
LP 1503867: Use ws_ou in open-ils.circ.copy_transit.receive.

After putting NCIPServer into production, we discovered that a staff
user cannot receive a transit destined for their work org. unit if
the actor.usr.home_ou is not the same as their current work_ou.
This occurred because transit_receive in OpenILS::Application::
Circ::Transit uses the requestor's home_ou and not the ws_ou.

If you want to trigger this bug, write a little script to receive
transits, then login with a staff account at a location other than
their home_ou and try to receive a transit destined for the work_ou.
It will fail.

This small commit replaces home_ou in two places with ws_ou in order
to make the above work.

NOTE: This bug affects an API call not used in Evergreen except in
one test script.  It used in two ILL add-ons for Evergreen: issa and
NCIPServer.  Receiving transits by checking copies in via the staff
client, the typical workflow, is not affected by this bug or its fix.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1609556: use unapi functions to retrieve holdings for SRU/Z39.50
Jeff Davis [Wed, 27 Jul 2016 21:00:28 +0000 (14:00 -0700)]
LP#1609556: use unapi functions to retrieve holdings for SRU/Z39.50

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoDelay Novelist loading slightly
Thomas Berezansky [Thu, 4 Aug 2016 14:37:17 +0000 (10:37 -0400)]
Delay Novelist loading slightly

So that if Novelist holds things up other JavaScript, like staff client calls,
are not delayed due to Novelist issues.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1499537 Fixed kpac.xml caching problem
Liam Whalen [Thu, 24 Sep 2015 22:00:17 +0000 (15:00 -0700)]
LP#1499537 Fixed kpac.xml caching problem

KPAC config files must be cached per config path in order to support
cases where more than one KPAC interface has been configured in different
vhosts or locations.

Signed-off-by: Liam Whalen <liam.whalen@bc.libraries.coop>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1588450 asset.copy.cost Field Missing from Client Interfaces
Michele Morgan [Thu, 2 Jun 2016 16:44:02 +0000 (12:44 -0400)]
LP#1588450 asset.copy.cost Field Missing from Client Interfaces

This patch adds the asset.copy.cost cost field, with the label 'Acquisition
Cost' to the following:

XUL client:

- Item status list view column picker
- Item status alternate view
- Copy editor

Web client:

- Item status alternate view
- Copy editor label change

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1576502 Fulfilled holds also should not display as active
Kathy Lussier [Sat, 5 Mar 2016 01:51:04 +0000 (20:51 -0500)]
LP#1576502 Fulfilled holds also should not display as active

Once a hold has been fulfilled, the patron doesn't consider it active, so let's
change the active status for those holds too.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1575177 Add text informing users they cannot add survey questions
Kathy Lussier [Tue, 26 Apr 2016 15:47:27 +0000 (11:47 -0400)]
LP#1575177 Add text informing users they cannot add survey questions

Survey questions cannot be added or modified once a survey has started, so
let's add some warning text in the interface letting them know why they can't
perform these actions.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP1559281: Allow Baker and Taylor Fake ISBNs
Thomas Berezansky [Mon, 28 Mar 2016 15:03:59 +0000 (11:03 -0400)]
LP1559281: Allow Baker and Taylor Fake ISBNs

For Content Cafe, jam two B&T entrys into the hash so that Business::ISBN
doesn't register them as invalid prefix ISBNs.

B&T uses internal ISBN's with country codes 630 and 631 for materials
ordered through them when no assigned ISBN exists.  The ContentCafe
added content service knows about these ISBNs, but they are not generally
used by other providers.

To Test:  This only works if you are using the ContentCafe added content provider.

 - Before Patch -
1. Add the isbn 9786315820243 as the only isbn on a record. Remove UPCs also..
2. Clear the added content cache by restarting memcached or using the staff link.
3. View record in catalog and you should see no cover art.

 - After Patch -
1. Clear the added content cache.
2. View the record in the catalog and you should now see cover art for the title
"Video games: the movie"

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1424656: Fix grammatical error in My Account holds screen
Kathy Lussier [Thu, 19 May 2016 17:27:11 +0000 (13:27 -0400)]
LP#1424656: Fix grammatical error in My Account holds screen

Changes the holds queue position string from 'x hold on y copies' to 'Hold #x on
y copies', which is gramatically correct.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1604515: Remove Advanced Hold Options link when part holds are expected
Kathy Lussier [Tue, 19 Jul 2016 18:02:12 +0000 (14:02 -0400)]
LP#1604515: Remove Advanced Hold Options link when part holds are expected

This branch removes the Advanced Hold Options link from the Place Hold
screen in cases where all copies on the bib record contain parts. If a user
attempts to place a metarecord hold and all other copies in the group also
contain parts, the hold will fail. By removing the link, we are removing one
potential point of failure for the user.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP1496556 Claimed never checked out count not increased when applied to LOST circulation
blake [Thu, 30 Jun 2016 20:41:35 +0000 (15:41 -0500)]
LP1496556 Claimed never checked out count not increased when applied to LOST circulation

Bug within the Lost copy status checkin block. Needed to set the stop_fines

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP1534283 SIP prevents renewal when user has any blocking standing penalties
blake [Mon, 18 Apr 2016 21:25:46 +0000 (16:25 -0500)]
LP1534283 SIP prevents renewal when user has any blocking standing penalties

This code dives into each penalty to investigate weather or not the patron
can renew based on the block list column. Before, SIP would block renewals with
the presence of penalty 1 or 2 regardless.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoStamping upgrade for payment limits.
Mike Rylander [Tue, 9 Aug 2016 16:46:07 +0000 (12:46 -0400)]
Stamping upgrade for payment limits.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoStamping upgrade for accent-ignoring patron search
Mike Rylander [Tue, 9 Aug 2016 16:41:54 +0000 (12:41 -0400)]
Stamping upgrade for accent-ignoring patron search

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP 1501781: Make patron name search diacritic/space insensitive.
Jason Stephenson [Thu, 17 Mar 2016 21:47:52 +0000 (17:47 -0400)]
LP 1501781: Make patron name search diacritic/space insensitive.

Add pgtap tests for the new org unit setting, the new indexes, and to
test the evergreen.unaccent_and_squash() functionality.  Many of the
latter tests are based on the tests for evergreen.lowercase().

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP 1501781: Make patron name search diacritic/space insensitive.
Jason Stephenson [Thu, 17 Mar 2016 12:01:54 +0000 (08:01 -0400)]
LP 1501781: Make patron name search diacritic/space insensitive.

This commit adds the necessary code to storage actor publisher to use
the new evergreen.unaccent_and_squash db function when doing a patron
name search.

It is based on code originally by Dan Pearl, but then modified to
remove a dependency on a new Perl module by calling the db function on
the search input as well.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1501781 - Make patron name search diacritic/space insensitive.
Dan Pearl [Thu, 1 Oct 2015 13:49:17 +0000 (09:49 -0400)]
LP#1501781 - Make patron name search diacritic/space insensitive.

Diacritical marks may exist in the patron record, as they should, but
this makes patron name search difficult for librarians who may be
unfamiliar with all the special characters used and also how to elicit
them from a keyboard.  To ease this, accented characters will be
converted into their 'plain' analogs for comparison purposes.

So, for example, if the patron's last name is Ch├ívez, typing "Chavez"
in the Last Name box in Patron Search will match it.

Spaces in a name (like "De la Croix") will be squashed out so that
name would be matched by "Delacroix" or "De la Croix" or variants.

The librarian can enter the accented characters or not.

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP1183964: Payment Limit Options
Jason Boyer [Fri, 13 May 2016 16:51:07 +0000 (12:51 -0400)]
LP1183964: Payment Limit Options

Add support for 2 new OU settings, a payment warning
amount (try to pay more than this and you're required
to confirm it) and a hard limit where no payment larger
will be accepted. Support is also added to both the XUL
client and webstaff client.

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Jeanette Lundgren <jlundgren@cwmars.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP 1481441: Improve Hold Failure Messages
Jason Boyer [Fri, 14 Aug 2015 15:26:54 +0000 (11:26 -0400)]
LP 1481441: Improve Hold Failure Messages

Rearranging the order of the various sources of hold
failure messages makes it less likely to see spurious
"Item is too new to transit this far" messages. Now
errors due to excessive fines or number of existing
holds.

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Conflicts:
Open-ILS/src/templates/opac/parts/place_hold_result.tt2

3 years agoStamping upgrade for reingest speedup
Mike Rylander [Tue, 9 Aug 2016 16:04:35 +0000 (12:04 -0400)]
Stamping upgrade for reingest speedup

Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1588543: schema update script
Galen Charlton [Fri, 29 Jul 2016 15:40:46 +0000 (11:40 -0400)]
LP#1588543: schema update script

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1588543: tests for verifying correct generated of record attributes
Galen Charlton [Fri, 29 Jul 2016 15:34:06 +0000 (11:34 -0400)]
LP#1588543: tests for verifying correct generated of record attributes

This patch adds tests to verify that the expected
set of record attributes are generated when a bib record
is ingested.  The tests serve a couple purposes:

- verifying that changes to the record attribute ingest
  stored procedure don't have unexpected side-effects
- validating record attribute definitions in the seed data

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1588543: further speed up record attribute ingest
Galen Charlton [Fri, 29 Jul 2016 15:24:07 +0000 (11:24 -0400)]
LP#1588543: further speed up record attribute ingest

Following a suggestion from Dan Wells, this patch adds
an index on config.coded_value_map(ctype). My testing shows
that the index by itself can halve the time required to
fully ingest a new record; in conjunction with the
change in the previous patch, full reingest time is
reduced by about 60%.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1588543: Speed up record attribute ingest
Dan Wells [Wed, 1 Jun 2016 18:36:29 +0000 (14:36 -0400)]
LP#1588543: Speed up record attribute ingest

A huge number of rows (700+) have been added to
config.record_attr_definition in recent versions of Evergreen. However,
these rows do not actually define any indexing at all, but are used for
other purposes.  The reingest process currently churns over all of these
rows to ultimately do nothing.

This commit limits the group of attributes considered at ingest to only
those which might index something.  Testing indicates a substantial
speed boost to typical use of metabib.reingest_record_attributes()
(over 2x speedup).

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
3 years agoLP#1608711: Update schema.org property name from "seller" to "offeredBy"
Dan Scott [Mon, 1 Aug 2016 22:09:04 +0000 (18:09 -0400)]
LP#1608711: Update schema.org property name from "seller" to "offeredBy"

Per the 2015-11-05 release of schema.org
(http://schema.org/docs/releases.html#v2.2), the "offeredBy" property is now
the preferred property to use for non-commercial entities (such as libraries)
making an offer of an item for borrowing, sale, etc.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
3 years agoLP#1549505: Stamping upgrade scripts 0983-84 for stat pop ratings
Kathy Lussier [Fri, 29 Jul 2016 21:51:14 +0000 (17:51 -0400)]
LP#1549505: Stamping upgrade scripts 0983-84 for stat pop ratings

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: update $modal to $uibModal
Galen Charlton [Thu, 28 Jul 2016 16:19:15 +0000 (12:19 -0400)]
LP#1549505: update $modal to $uibModal

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Decrease value of Max popularity importance multiplier
Kathy Lussier [Thu, 21 Jul 2016 16:02:38 +0000 (12:02 -0400)]
LP#1549505: Decrease value of Max popularity importance multiplier

My testing found that a setting between 1.1 and 1.2 resulted in fairly good
results when using the popularity-adjusted relevance sort. Adjusting the value
in the seed data to 1.1 since it will be a better starting point for libraries.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Remove stray semicolon from PgTap test
Kathy Lussier [Thu, 21 Jul 2016 15:52:24 +0000 (11:52 -0400)]
LP#1549505: Remove stray semicolon from PgTap test

The semicolon was causing failures in the test.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Query literal interpolation casts incorrectly
Mike Rylander [Thu, 26 May 2016 21:51:49 +0000 (17:51 -0400)]
LP#1549505: Query literal interpolation casts incorrectly

We need to be sure that all query values are of the same type in the same
columns because PLPGSQL functions are compiled and cached.  In this case,
the core query of the in-db search cannot have its shape change.  This
commit assures that browse and search uses of the SP provide core queries
that match on their SELECT lists.  Of particular importance is the type
of the "rel" output column, which was variously float8 or numeric, depending
on whether the search contained any terms (a "search") or not (a browse
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>
3 years agoLP#1549505: fix staged browse
Galen Charlton [Wed, 25 May 2016 16:53:24 +0000 (12:53 -0400)]
LP#1549505: fix staged browse

This patch ensures that the core query passed to
query_parser_fts by staged browse contains dummy
badges and popularity columns (and thus, doesn't break);
note that browse itself cares nothing about popularity.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: update baseline database schema
Galen Charlton [Fri, 6 May 2016 15:29:39 +0000 (11:29 -0400)]
LP#1549505: update baseline database schema

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP 1549505: Fix syntax error in OpenILS/WWW/EGCatLoader/Record.pm
Jason Stephenson [Fri, 15 Apr 2016 13:36:51 +0000 (09:36 -0400)]
LP 1549505: Fix syntax error in OpenILS/WWW/EGCatLoader/Record.pm

Typo/error apparently introduced on line 72 in commit eeee27c.

Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Release notes for statistically generated record ratings (popularity)
Mike Rylander [Tue, 5 Apr 2016 20:26:41 +0000 (16:26 -0400)]
LP#1549505: Release notes for statistically generated record ratings (popularity)

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: PGTap test to show the infrastructure is working
Mike Rylander [Tue, 5 Apr 2016 16:10:53 +0000 (12:10 -0400)]
LP#1549505: PGTap test to show the infrastructure is 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>
3 years agoLP#1549505: add flag to tweak popularity-adjusted relevance
Galen Charlton [Fri, 11 Mar 2016 18:27:03 +0000 (13:27 -0500)]
LP#1549505: add flag to tweak popularity-adjusted relevance

This adds a new global_flag, search.max_popularity_importance_multiplier,
to control the factor by which popularity affects Popularity Adjusted
Relevance ranking.

The value should be a decimal number, typically between 1.0 and 2.0:

* 1.0 be would be equivalent to not adjusting relevance for popularity
  at all.
* 1.1 would mean that the multiplier would range from 1 (for zero
  popularity) to 1.1 (for maximum popularity), for a maximum boost of
  10% of the base relevance value of the record.

What's happening in the code:

Scale the 0-5 effect of popularity badges by providing a multiplier
for the badge average based on the overall maximum multiplier.  Two
examples, comparing the effect to the default $max_mult value of 2.0,
which causes a $adjusted_scale value of 0.2:

 * Given the default $max_mult of 2.0, the value of
   $adjusted_scale will be 0.2 [($max_mult - 1.0) / 5.0].
   For a record whose average badge score is the maximum
   of 5.0, that would make the relevance multiplier be
   2.0:
      1.0 + (5.0 [average score] * 0.2 [ $adjusted_scale ],
   This would have the effect of doubling the effective
   relevance of highly popular items.

 * Given a $max_mult of 1.1, the value of $adjusted_scale
   will be 0.02, meaning that the average badge value will be
   multiplied by 0.02 rather than 0.2, then added to 1.0 and
   used as a multiplier against the base relevance.  Thus a
   change of at most 10% to the base relevance for a record
   with a 5.0 average badge score. This will allow records
   that are naturally very relevant to avoid being pushed
   below badge-heavy records.

 * Given a $max_mult of 3.0, the value of $adjusted_scale
   will be 0.4, meaning that the average badge value will be
   multiplied by 0.4 rather than 0.2, then added to 1.0 and
   used as a multiplier against the base relevance. Thus a
   change of as much as 200% to (or three times the size of)
   the base relevance for a record with a 5.0 average badge
   score.  This in turn will cause badges to outweigh
   relevance to a very large degree.

The maximum badge multiplier can be set to a value less than
1.0; this would have the effect of making less popular items
show up higher in the results.  While this is not a likely
option for production use, it could be useful for identifying
interesting long-tail hits, particularly in a database
where enough badges are configured so that very few records
have an average badge score of zero.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: add admin interface to manage badges
Galen Charlton [Wed, 24 Feb 2016 22:19:14 +0000 (17:19 -0500)]
LP#1549505: add admin interface to manage badges

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Add ability to set default sorter via global flag
Mike Rylander [Thu, 4 Feb 2016 22:19:03 +0000 (17:19 -0500)]
LP#1549505: Add ability to set default sorter via global flag

In addition, support for sorting by ascending popularity remains
in the back end, however, since if one's configured badges such
that almost every record has a badge score, that sort order could
be useful for examining the long tail of the collection.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Provide a cron-able script to perform badge recalculation
Mike Rylander [Wed, 3 Feb 2016 20:46:52 +0000 (15:46 -0500)]
LP#1549505: Provide a cron-able script to perform badge recalculation

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: Teach QP and its caller stack how to use badges
Mike Rylander [Fri, 22 Jan 2016 22:13:25 +0000 (17:13 -0500)]
LP#1549505: Teach QP and its caller stack how to use badges

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1549505: schema and IDL for statistical poularity ratings
Mike Rylander [Fri, 8 Jan 2016 03:00:20 +0000 (22:00 -0500)]
LP#1549505: schema and IDL for statistical poularity ratings

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoLP#1581196: webstaff: fix dirty form detection in patron editor
Galen Charlton [Thu, 12 May 2016 19:58:49 +0000 (15:58 -0400)]
LP#1581196: webstaff: fix dirty form detection in patron editor

This patch fixes a problem wherein the patron editor
form would think that it had been modified by the
user immediately after initialization.

To test
-------
[1] Load the patron editor, then refresh the page. Note that
    you are warned that there is unsaved input.
[2] As above, but hit the save button. Note that after saving,
    you still get a warning that there is unsaved input.
[3] Apply the page, then repeat tests 1 and 2. This time, you
    shouldn't get inappropriate unsaved data warnings.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
3 years agoLP#1589586: use all fund debits (even encumbrances) when doing prorate calculations
Jeff Davis [Thu, 14 Jul 2016 21:10:13 +0000 (14:10 -0700)]
LP#1589586: use all fund debits (even encumbrances) when doing prorate calculations

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
3 years agoDocs: Fix syntax for code block within list
Remington Steed [Wed, 13 Jul 2016 13:37:11 +0000 (09:37 -0400)]
Docs: Fix syntax for code block within list

This commit fixes two small AsciiDoc syntax problems that prevented a
line of code from displaying properly. First, it changes the code block
lines from three dashes to four dashes. Second, it adds a plus sign on
the preceding line, to connect the code block to the previous list item.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
3 years agoDocs: Small syntax fix, formatting improvements
Remington Steed [Fri, 8 Jul 2016 14:32:05 +0000 (10:32 -0400)]
Docs: Small syntax fix, formatting improvements

This commit fixes a small AsciiDoc syntax bug caused by a real '_' that
accidentally closed the '_' italics tag. This block of documentation
will now more closely match the identical content found in
'admin/template_toolkit.txt' (chapter labeled "TPac Configuration and
Customization").

Signed-off-by: Remington Steed <rjs7@calvin.edu>
3 years agoLP#1568046: Stamping upgrade script for eliminating connectby from functions
Ben Shum [Tue, 5 Jul 2016 05:14:38 +0000 (01:14 -0400)]
LP#1568046: Stamping upgrade script for eliminating connectby from functions

Signed-off-by: Ben Shum <ben@evergreener.net>
3 years agoLP#1568046: Replace last two uses of connectby with other function calls.
Jason Stephenson [Fri, 1 Jul 2016 17:13:16 +0000 (13:13 -0400)]
LP#1568046: Replace last two uses of connectby with other function calls.

Modify permission functions permission.usr_has_perm_at_nd and
permission.usr_has_perm_at_all_nd to no longer require the connectby
function from the tablefunc extension.  The connectby functionality is
replaced by existing database functions to retrieve org. unit
descendants.

This change removes the need to load the tablefunc extension, so it is
dropped from the create scripts.  The upgrade script does not remove
the extension as sites may be using connectby or other functions from
the extension.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
3 years agoDocs: Add tip for using "temp" as a login_types when using "Change Operator: New"
Yamil Suarez [Sun, 26 Jun 2016 16:52:43 +0000 (12:52 -0400)]
Docs: Add tip for using "temp" as a login_types when using "Change Operator: New"

Signed-off-by: Yamil Suarez <yamil@yamil.com>
3 years ago2.10.4-2.10.5 schema upgrade script
Galen Charlton [Thu, 16 Jun 2016 00:32:10 +0000 (20:32 -0400)]
2.10.4-2.10.5 schema upgrade script

Signed-off-by: Galen Charlton <gmc@esilibrary.com>