Mike Rylander [Fri, 25 Mar 2016 17:52:54 +0000 (13:52 -0400)]
LP#1539084: webstaff: sort column picker entries by class path and column labels
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Conflicts:
Open-ILS/web/js/ui/default/staff/services/grid.js
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
- add items to bucket
- request items
- Link as Conjoined to Previously Marked Bib Record
- Delete Copies
- Check In Copies
- Renew Copies
- Show Triggered Events
- Show Item Holds
- Show Record Holds
- Mark Item As Damaged
- Mark Item as Missing
- Add Copies
- Add Volumes and Copies
- Edit Volumes
- Edit Copies
- Edit Volumes and Copies
- Replace Barcodes
- Transfer Items to Previously Marked Library
- Transfer Items to Previously Marked Volume
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Mike Rylander [Wed, 24 Feb 2016 16:02:42 +0000 (11:02 -0500)]
LP#1570091: Show (index / hit count) in the Back To Results button
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Conflicts:
Open-ILS/src/templates/opac/parts/record/navigation.tt2
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Bill Erickson [Fri, 1 Apr 2016 00:35:00 +0000 (20:35 -0400)]
LP#1564685 Avoid referencing out-of-scope stat cats
Fixes a bug in the patron editor where out-of-scope stat cats would be
incorrectly bundled in the patron save operation, resulting in a
server-side error on save. In short, ignore out-of-scope stat cat
entries for patrons in the editor.
An org setting requiring a value for a field in the patron editor means
the field is required, even if it's not required by default. IOW, fix
the code that was supposed to do that already.
Of note, county and state can now both be marked as required by org
settings in the patron editor.
Bill Erickson [Thu, 24 Mar 2016 02:13:44 +0000 (22:13 -0400)]
LP#1564685 Allow barcode as username despite regex
Allow a patron's barcode to be considered a valid username in the patron
editor even in the presence of an 'opac.username_regex' org setting
value that does not match the barcode.
Jason Boyer [Thu, 31 Mar 2016 12:08:03 +0000 (08:08 -0400)]
LP1564378: Silence Hash Init Warning
A trivial change to silence a lot of noise (if your libraries
use extending grace periods.)
Signed-off-by: Jason Boyer <jboyer@library.in.gov> Signed-off-by: Jason Stephenson <jstephenson@mvlcstaff.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 22 Mar 2016 15:50:58 +0000 (11:50 -0400)]
LP#1373601: Consider relevant characters before using word-boundary checks
To perform unanchored phrase limits, we make sure that the phrase supplied
by the user does not end in the middle of a word by bounding the condition
with word-boundary bracket expresssions. However, if the phrase starts
or ends with a non-word character (that is, something other than numbers,
letters, or the underscore) then the word-boundary expression won't match.
The effect of this is to cause phrase searches starting or ending in
punctuation to fail when the user would not expect them to.
To address this, we now test the phrase for word-iness at the front and
back before applying word-boundary bracket expressions.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Galen Charlton [Mon, 21 Mar 2016 19:23:42 +0000 (15:23 -0400)]
LP#1560174: fix MARC import for database upgraded to 2.10.0
This patch applies the correct version of the vandelay.ingest_items()
stored procedure introduced in the patch for bug 1548143.
To test
-------
[1] Upgrade an Evergreen database to 2.10.0 (a fresh database
will not run into the bug).
[2] Try importing a MARC bib record via Vandelay using a profile
that imports items. This should fail.
[3] Apply the schema update in this patch.
[4] Repeat step 2; this time, the import should succeed.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
* Fixes bug that caused password verify calls to fail with an exception
when tested with a barcode.
* Verify API always returns false when tested on deleted users.
To test:
1. In the staff client, navigate to Circulation -> Verify Credentials
2. Confirm username and barcode lookups return success for a non-deleted
user using the correct password.
3. Delete a test user in the database:
UPDATE actor.usr SET deleted = TRUE WHERE id = <id-of-test-user>;
4. Re-do step 2 confirming non-success results are returned.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Avoid transaction collision errors when updating patrons, in cases where
the patron object has to be updated more than once, by refreshing the
last_xact_id value on the in-progress patron object.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1. Adds support for enforcing ui.patron.edit.*.require and
ui.patron.edit.*.regex org unit settings via Angular's ng-pattern and
ng-required attributes.
2. Supports selecting only valid profile groups and home org units.
3. Warns the user when a duplicate barcode or username is encountered.
When any fields in the form are invalid, the save options are disabled.
==
Adds support for enforcing the following permissions:
Mike Rylander [Mon, 7 Dec 2015 16:57:11 +0000 (11:57 -0500)]
LP#963341: Unrelated YAOUS breaks MFHD management
Part of LP bug 963341 is about how the setting opac.fully_compressed_serial_holdings
breaks staff's ability to manage MFHD attached to serials records. This
commit unbreaks that by fetching the relevant MFHD regardless of that setting
but should not otherwise change user-visible behavior.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Dan Wells [Thu, 7 Jan 2016 16:47:43 +0000 (11:47 -0500)]
LP#1208613: Reset lineitem cache when resetting table
Stale cache entries in this table were causing the "expand all"
functionality to break. This might be a nuclear option, but as far as
I could see, this "cache" gets repopulated on every pagination anyway,
so I don't think we're losing anything.
To test:
[1] Select a large list from the Acquisitions --> My Selection List
screen.
[2] Click on the Expand All button and the items on the page expand
with more information.
[3] Click on the Next link to bring up page 2 of the list.
[4] Click on the Expand All button and verify that additional
information is displayed.
Terran McCanna [Tue, 1 Mar 2016 21:47:20 +0000 (16:47 -0500)]
LP#1370694 Selfcheck: "Print List" for Holds view does not work
Prior to this change, the holds data was not getting passed to the
print function. Now, it is being captured and passed to the print
function. Because of some sorting discrepancies between the order of
the information being passed from here to the action trigger and the
order that the information is presented when pulled directly out of the
database by the action trigger (which led to data mismatches between the
title/author and the hold status/pickup locations for each printed item),
I modified this script to pass all of the hold information together in the
desired order to the action trigger rather than relying on the template
to match the data coming from the script with the data from the database.
This change requires the action trigger printing template to be updated in
order to work. I've included an upgrade script as well as an update to the
seed data script.
Terran McCanna [Tue, 1 Mar 2016 22:35:28 +0000 (17:35 -0500)]
LP#1551447 Selfcheck: Printing Fines Prints All Open Transactions
This corrects the behavior of the selfcheck fines receipt print template.
Prior to this, it printed all open billable transactions (eg, every item
that the patron had checked out) regardless of whether or not it had bills
associated with it. This adds a small bit of logic to the template to
check for a balance due. It also updates the javascript to check for a
balance on the account before launching the print function to prevent the
system from taking unnecessary action.
This includes a SQL upgrade script to update the Self-Checked Fines
Receipt template for systems that are already in production, as well as
including an update to the seed data.
Terran McCanna [Wed, 2 Mar 2016 21:52:13 +0000 (16:52 -0500)]
LP#1275118 Holds history displays canceled holds as active
Prior to this change, when a patron viewed holds history, canceled holds
displayed as active. From the patron point of view, the hold is no
longer active after it has been canceled.
Terran McCanna [Thu, 11 Jun 2015 22:15:13 +0000 (18:15 -0400)]
LP#1454871: Fix KPAC Hold Notification Preferences
Correction to KPAC holds notification default preferences to allow for
SMS text messaging options.
Prior to this correction, KPAC hold notifications would only pick up
hold preferences if set to email and/or phone. This correction allows
it to pick up email and/or phone and/or sms notification preferences.
To test, set hold preferences to different options, place hold via the
KPAC, and then view the hold to see which preferences were recognized.
(May need to show columns for Phone Notify, Text Notify, and Email Notify.)
Terran McCanna [Wed, 24 Feb 2016 22:17:27 +0000 (17:17 -0500)]
LP#1548869 KPAC hold results screen not displaying complete info
The getit_results.tt2 page was not displaying item title after
hold placement or after adding to a list. It was also not pulling
in the item id (which was needed for navigational links back to the
record) and was not pulling in the list name after adding an item
to a named list.
This patch adds some logic to prevent subroutine conflicts, adds
missing parameters to a function call, and corrects a variable name.
To test:
Log in to the KPAC and perform the following actions:
1. Place a successful hold (results screen should show item title
and pickup library, and provide links back to record page).
2. Place an unsuccessful hold (try placing a hold on an item you
already have a hold on - the results screen should show the item
title).
3. Add item to a temporary list (results screen should show item title).
4. Add item to a named list (results screen should show item title and
title of list it was added to).
Josh Stompro [Sat, 27 Feb 2016 14:54:04 +0000 (08:54 -0600)]
LP#1549393 - Remove undef values from isbn and issn arrays.
This prevents empty requests being sent to content providers.
This caused a problem for us because invalid ISBNs were causing
requests to Content Cafe to fail, since Content Cafe returns an
error if there is a blank key sent along with valid ISBNs and UPCs.
Specifically we had problems with DVD records from Baker & Taylor because
B&T creates unoffical ISBNs for the DVDs they sell. Those ISBN's do
not validate when run through B::ISBN.
ISSNs are also cleaned since they are validated and set to undef if
invalid just like ISBNs are.
It shouldn't hurt to not send blank requests to providers in any case.
To test:
1. I know this is a problem with Content Cafe, I don't
know if any other providers are effected. Let me know
if you need Content Cafe credentials to test.
2. Add an invalid ISBN 020a entry to a bib record that has added content. 9786316271976 is an example of a fake ISBN that doesn't
pass B::ISBN validation. Or just make up a fake number.
3. Clear out the memcache entries for that record. In 2.9+ there
is a link to clear the cache in the record detail view under Permalink.
4. Reload the record and the cover art and other added content should
not be displayed. This is because the invalid ISBN gets set to undef
, and the undef gets sent to content cafe as a blank key request.
5. Now apply the fix. Clear the memcache entries for that bib, and now
the cover art should be displayed since the undef entries due to the invalid
ISBN's have been removed.
Josh Stompro [Fri, 4 Mar 2016 19:51:34 +0000 (13:51 -0600)]
LP#1550495 - Add EDI Cancel Code 85 - used by Baker & Taylor
Baker & Taylor send back a quantity code 85 response when they cancel
a line item. This code wasn't included as one of the built in EDI
codes so those line items were not being canceled automatically in
evergreen.
The system looks for the response code + 1200 to find the cancel reason,
so this code is entered as ID 1285 in the acq.cancel_reason table.
I received confirmation from another system that uses B&T as an EDI vendor
that they also receive code 85 responses when something gets canceled.
This patch makes open-ils.auth_internal look for
default_timeout values for persistent authentication
in the intended section of opensrf.xml.
To test:
[1] Attempt to log into the public catalog with the "Stay logged in?"
option in effect. The login will either fail or the session
will not persist when navigating within the "My Account"
pages.
[2] Apply the patch and restart services.
[3] Attempt step 1 again; this time, authentication should work
and the session should remain active.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Terran McCanna [Wed, 2 Mar 2016 17:16:43 +0000 (12:16 -0500)]
LP#1454884 Hold placed on grouped metabib result displays wrong title
Prior to this change, a full/extended title displayed even on metarecord
holds that had different extended titles, which sometimes led to situations
where a video's full title displayed on a book hold, or vice versa. This
change displays the short version of the title on metarecord holds and
the full version on individual record holds.
Chris Sharp [Mon, 8 Feb 2016 18:00:06 +0000 (13:00 -0500)]
LP#1533331 - Fix evergreen.protect_reserved_rows_from_delete() trigger function
The fix for bug 1513554 included creating a general trigger function to prevent
the deletion of reserved table rows with an ID lower than a specified threshold.
Testing for that seemed to pass muster, but using the function in practice revealed
a failure to delete deletable rows either.
This adds an explicit RETURN to the function, which fixes the issue.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
The functions search.facets_for_record_set and
search.facets_for_metarecord_set that were added in the 0958 upgrade
script from Launchpad Bug #1505286 are not compatible with PostgreSQL
9.1. This commit makes them compatible with Pg 9.1 for those who need
it.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jeff Davis [Tue, 12 Jan 2016 19:58:13 +0000 (11:58 -0800)]
LP#1533329: Selectively disallow opt-in based on patron's home library
Patrons from Library A can "opt in" to sharing their personal
information with Library B. However, hitherto there has been no way for
Library A to prevent their patrons from being opted in at other
libraries. This would be useful if, for example, Library A is a school
library and does not want other libraries in the consortium to have
access to student accounts.
This commit adds the ability to selectively disallow opt-in by home
library. Specifically, it makes the following changes:
1. Adds an org setting (org.restrict_opt_to_depth) that governs opt-in
restrictions. All org units within the home OU's section of the org
tree at or below depth X are within the patron's opt-in scope; opt-in is
disallowed at any library outside of that scope. If the setting is not
enabled, the entire org tree is effectively within scope. (None of this
should be confused with the opt boundary, which defines the point at
which patrons need to be opted in vs. just granting access without
opt-in.)
2. Modifies open-ils.actor.user.org_unit_opt_in.check so that it checks
that setting and determines if the current work OU is within the
patron's opt-in scope. If opt-in is not permitted at this work OU,
an appropriate response is returned.
3. Handles the response in both staff clients. If opt-in is disallowed,
staff will see an alert which says, "This patron's record is not
viewable at your library."
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Define all fixed fields for use in the MARC editor and
add acceptable values for context menues. Also define
composite coded values for special multi-position
single character fields.
Signed-off-by: Jason Boyer <jboyer@library.in.gov> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
LP#1391282: Add Auto-Submitted: auto-generated header to included A/T email templates.
This patch updates various stock A/T definitions for
email notifications to add the following email header:
Auto-Submitted: auto-generated
This specifies to email clients that the message was
generated by a computer program and that no automatic
response is desired (particularly out-of-office/vacation
responses).
No upgrade script is provided; administrators who
wish to use this header for existing notices should
update them manually.