Galen Charlton [Fri, 28 Oct 2016 15:42:52 +0000 (11:42 -0400)]
LP#1488655: fix MR remapping upon fingerprint change
This patch ensures that if the fingerprint of a bib changes, the
bib will be moved to a new metarecord as opposed to ending up
as a member of more than one metarecord.
To test
-------
[1] Note the metarecord that a bib belongs to.
[2] Change the bib so that its fingerprint changes -- with stock
cbf settings, editing the 245$a should suffice.
[3] Note that it is now a component of two metarecords.
[4] Apply the patch.
[5] Repeat step 2 or force a reingest. The bib should now be part
of exactly one metarecord.
Galen Charlton [Fri, 28 Oct 2016 15:40:52 +0000 (11:40 -0400)]
LP#1488655: regression test for metarecord remapping
This patch contains pgTAP tests for verifying that when
the fingerprint of a bib is changed, it remains part of
exactly one metarecord (as opposed to being part of both
its old and new MRs).
Galen Charlton [Wed, 16 Nov 2016 17:18:29 +0000 (12:18 -0500)]
LP#1618183: more work backporting update to rel_2_10
This patch tries to ensure that if somebody running 2.10.8 (or a
later 2.10.x) attempts to upgrade to 2.11.1 or later using the
monolithic version upgrade scripts, the presence of the es-ES locale won't
abort the 2.10.7-2.11.0 update.
Fixes added by bug 1613374 changed the behavior of canceled
transits so that the test written for bug 1306666 stopped working.
Accounting for the new "Canceled Transit" status fixes the test.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
Chris Sharp [Tue, 8 Nov 2016 00:10:06 +0000 (19:10 -0500)]
Fix purge_user_activity.pg live test
The purge_user_activity.pg test inserts rows into actor.usr_activity
in a random date order, but the changes in bug 1570909 created a trigger
that overwrites the previous entry for a transient type, causing the
test to fail. We reorder the usr_activity rows so that the most recent
row will be in place.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
blake [Thu, 3 Nov 2016 15:42:24 +0000 (10:42 -0500)]
LP1638921 List display broken in 2.11
The badges feature added more data to an array which broke bib_record_list_via_search
Taking the first item in the array instead of the last item fixes the issue.
Thanks to miker and Dyrcona!
Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Mike Rylander <miker@esilibrary.com>
Kathy Lussier [Tue, 24 May 2016 00:09:34 +0000 (20:09 -0400)]
LP#1584807: Clicking column header should not unsort list
Clicking column headers in My Account cycled through ascending order,
descending order, and then unsorted. But unsorting a list after clicking a
header is unintutive to the user. Instead, it should toggle between ascending /
descending order.
Test plan
* Using the concerto dataset, log in as user 99999395984 / maes1234
* Go to the Items Out area of my account and click the title column header to
sort the list.
* The list will first sort alphabetically in ascending order, on a second click
will sort alphabetically in descending order, and, on a third click, will
return to the default sort order.
* After loading the patch, clicking the column header should only result in
sorting in ascending and descending order.
Dan Scott [Tue, 6 Sep 2016 17:53:02 +0000 (13:53 -0400)]
LP#1620750 Prevent log warning for uninit var in checkin_retarget()
If the retarget_mode variable is not initialized, then a warning is generated
in the logs every time an item is checked in. Avoid the warning by
short-circuiting before testing the value in the regex.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Dan Scott [Fri, 16 Sep 2016 17:49:01 +0000 (13:49 -0400)]
LP#1624491 Avoid uninit var prox_cache during holds processing
open-ils.circ was logging a prox_cache hash value before it is
guaranteed to have been initialized. Instead, log messages _after_ they
have been initialized.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Furthermore, use the relatively new fpsum() utility function for summing
floating point numbers so we can avoid having multiple versions of the
summing logic floating (*cough*) around (*cough cough*).
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Sun, 2 Oct 2016 21:28:05 +0000 (17:28 -0400)]
Docs: add mpm_prefork config for Apache 2.4 systems
We had only documented the Apache 2.2 stanzas for mpm_prefork, so include a
section for 2.4 that uses MaxRequestWorkers and MaxConnectionsPerChild. Given
the memory leaks that we have seen, suggest lower settings for these two values
(assuming that most sites will be serving a public catalogue instead of using a
separate discovery layer).
Also fix the weird formatting where Debian instructions were indented under a
Fedora section.
Also use dots for ordered bullets instead of renumbering all of the bullets
again.
Dan Scott [Sun, 2 Oct 2016 14:04:04 +0000 (10:04 -0400)]
Docs: set up default action_trigger_filters.json file
Given that action_trigger_runner.pl looks by default for a file called
action_trigger_filters.json, instruct people to create that file when they are
first setting up their system.
The subject links in the record summary were stripping periods, changing
headings that contained N.Y., for example, to NY in the subsequent search
string. Since normalization at index time replaces the period with a space,
clicking the subject links did not successfully retrieve all relevant
results.
Test plan:
Click the Subject link for a record that has New York (N.Y.) in its heading and
has no other instances of ny in the keyword index. This record will not be
retrieved when you click the link. After loading the patch, the record will be
successfully retrieved, along with other records that contain New York (N.Y.) in
their subject headings.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Josh Stompro [Fri, 19 Aug 2016 20:31:11 +0000 (15:31 -0500)]
LP#1494750 - Extra closing curly bracket in style.css disables following css
Which is the .sort_deemphasize class, so the modification of the non-filing
characters never happens in the sort results.
Test Plan:
Needed: Patron account with checkout history that contains titles with
non filing characters.
Before change, view the checkout history and sort by title. Note that the
leading non filing characters look the same as the rest of the title.
After change, view the checkout history and sort by title. Note that the
leading non filing characters now have a different style than the rest
of the title.
Bill Erickson [Fri, 23 Sep 2016 17:56:42 +0000 (13:56 -0400)]
LP#1526159 Webstaff Items Out includes overdue, etc.
Items Out tally in patron summary (side-bar) is now consistent with the
Items Out value displayed along the top of the patron UI. It now includes
overdues and optionally lost/claims-returned total.
Displays a progress bar while waiting for results from a patron search
in the browser client. Bar only displays when a server-side search is
required. (It's not displayed for cached searches, etc.). Results grid
is hidden while the progress bar is visible and vice versa.
This commit applies Bill Erickson's change from bug #1227344 to the fund
selector that appears on the Selection List (picklist) screen when you click
"Copies" to reveal the line items table. (Bill also mentioned this in
bug #1266471.)
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Updates to the 2.11, including: adding a note about Ubuntu Xenial support,
adding acknowledgements for translators and for some who were missed in the
first iteration of Release Notes, slimming down the activity metric release
notes entry and moving the original, detail-rich entry to the TechRef directory.
Mike Rylander [Wed, 14 Sep 2016 14:44:15 +0000 (10:44 -0400)]
LP#1623541: Booking will fail if its router isn't called "router"
The circ code checks to see if the booking app is running, and if not, it
skips some booking-related logic. This is a useful performance enhancement
where booking is not in use. It does this by asking the OpenSRF router if
the "open-ils.booking" app has registered with it. Most of the time the
OpenSRF router will be called, unimaginatively, "router" but when it's not,
booking will not be considered by the circ module even if it's running.
Instead of assuming "router" we should simply look up the router's name.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Dan Scott [Sun, 18 Sep 2016 13:16:27 +0000 (09:16 -0400)]
LP#1624846 Add charset declaration to TPAC print output
Non-ASCII characters were printed incorrectly in some browsers, such as
Firefox, that still default to ISO-8859-1 encodings in the absence of a
specifically declared encoding.
Our output encoding will always be UTF-8, so declare it.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Wells [Tue, 13 Sep 2016 17:40:43 +0000 (13:40 -0400)]
LP#1620803 Add missing workstation passthru to AuthProxy
The AuthProxy.pm login function was not passing through a possible
'workstation' parameter to auth_internal's 'session.create' method.
Without this, all login's end up with a workstation set to the user's
home_ou, which can affect things including opt-in and transit
behaviors.
While not needed for the initial 'user.validate', it seems cleaner
and simpler to just bring it over when constructing the initial
$args hash.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Dan Scott <dscott@laurentian.ca>
This patch ensures that the patron profile and
search OU values are retained when going from a patron
search to a single record and back to the patron search.
To test the fix for this bug:
[1] Search for a patron using the expanded patron search fields,
making sure to select values for the profile and search
OU dropdowns.
[2] Open a record, then click "Patron Search" to return to the
search form.
[3] Verify that the profile and search library are set and
that the same patron records are retrieved.
This patch includes elements from a patch originally written
by Victoria Lewis <vlewis@catalystitservices.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Propagate lineitem MARC 'price' attribute value to the lineitem
estimated_unit_price field. This allows users to apply a lineitem
price directly from the ACQ Brief Record interface.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Tue, 6 Sep 2016 01:34:20 +0000 (21:34 -0400)]
SIP manual testing formatting cleanup
The extra ** in the sample SIP lines was distracting. Also, it wasn't clear
which password to use when $password was used twice, so disambiguate it to
identify user vs. SIP password.
Fix webstaff test failures due to an invalid IDL2js.js file by adding
newly-required preprocessing to the support script that generates that
file when running tests.
Signed-off-by: Jeff Godin <jgodin@tadl.org> Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Dan Wells [Thu, 25 Aug 2016 19:27:56 +0000 (15:27 -0400)]
Translation updates - po files
Translations have been significantly increased. In particular, Spanish
has received a huge update with over 8,000 new translations, Czech has
received a sizeable update of over 800 translations, and additional
smaller updates have been added for Arabic, French (Canada), and
Armenian.
Jason Stephenson [Thu, 25 Aug 2016 15:57:42 +0000 (11:57 -0400)]
LP#1613709: Make DOB validation alert failure translatable.
The alert message about an invalid DOB being entered in the OPAC
patron registration is not translatable. The solution, suggested by
Eva Cerninakova, is to wrap the string in the l() template function to
make it so. That is what this branch does.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jason Stephenson [Mon, 30 May 2016 17:01:45 +0000 (13:01 -0400)]
LP 1583608: The make_release script always makes a db upgrade script.
Alter make_release to always create a db upgrade script, even when no
actual db upgrades need to be applied. The minimal script created
will at least set the upgrade version in config.upgrade_log.
Bill Erickson [Wed, 24 Aug 2016 21:01:01 +0000 (17:01 -0400)]
LP#1497335 Show Last Few Circs patron retrieve options
In the Show Last Few Circulations window (XUL), disable the "Retrieve
Last Patron" button when the most recent circulation is aged. Disable
the "Retrieve All These Patrons" button when all circulations displayed
are aged.
Fixes a sort bug in open-ils.circ.copy_checkout_history.retrieve.
* Item Status -> Circulation History now displays aged circulations as
appropriate, showing "<Aged Circulation>" in lieu the patron's name.
* Item Status (and others) -> Show Last Few Circulations, ditto above.
Also, the 'Add Billing' button is disabled when displayed with an aged
circulation row.
* Copy -> Retrieve Last Patron action now includes aged circulations
when looking for the most recent circulation. When the most recent
circ is an aged circ, the UI reports "Item XXX circulation is an aged
circulation and has no linked user". Among other things, this means
the 3rd from last circ will not be confused as the 2nd to last circ
when the 2nd to last is aged.
* Mark Item Damaged will warn if the circ in question is aged. This is
just a sanity check and should never happen in reality, since the UI
only supports this option on checked out items (i.e. active circs).
1. Use all_circulation (combcirc) class (now accessible via pcrud) to
render the item Circ History List tab. In cases where a combcirc object
has no 'usr' value, the interface displays <Aged Circulation> where
the patron's name would normally be and disables the 'Add Billing'
button.
2. Handle null 'usr' values in the item status Recent Circ History tab.
When a renewal chain summary has no 'usr' value, the interface displays
<Aged Circulation> where the patron's name would normally be.
Various SQL, IDL, and API changes for accessing aged circulations,
primarily via all_circulation objects, for imporoved staff client
integration.
*. Support open-ils.pcrud access to the action.all_circulation DB view /
'combcirc' class.
*. Add missing parent_circ, checkin_scan_time, checkin_workstation to
combcirc class.
*. Add 'usr' field to combcirc. The action.all_circulation VIEW will
return NULL as the 'usr' column value when returning data for an
aged_circulation.
*. Add virtual 'active_circ' and 'aged_circ' fields to combcirc for
fleshing the related action.circulation or action.aged_circulation
object.
* Adds SQL functions for action.all_circ_chain and
action.summarize_all_circ_chain, which pull data from
aged_circulation.
*. API calls
open-ils.circ.[prev_]renewal_chain.retrieve_by_circ[.summary] now return
data for active and aged circulations by using action.all_circ_chain and
action.summarize_all_circ_chain. When using these APIs, a null value
in the 'usr' column is the indication that a given circulation or circ
chain summary represents an aged circulation.
* API open-ils.circ.copy_details.retrieve will now optionally return
aged circ data within the copy circ history.
Chris Sharp [Wed, 24 Aug 2016 18:23:09 +0000 (14:23 -0400)]
LP#1613374 - Check stored copy status before clobbering it.
Some transit.copy_statuses would result in some other behavior
upon checkin, so we check all that would go into 'Reshelving'
status, otherwise, restore the stored status.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Chris Sharp [Tue, 23 Aug 2016 13:32:59 +0000 (09:32 -0400)]
LP#1613374 - Add 'Canceled Transit' to non-'BAD' copy statuses.
During checkin, Circulate.pm checks the copy status and if it
isn't listed as an okay status, the event COPY_BAD_STATUS is
returned, which requires an override. This change makes copies
in 'Canceled Transit' status check in without an alert.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Chris Sharp [Tue, 16 Aug 2016 11:11:24 +0000 (07:11 -0400)]
LP#1613374 - Add 'Canceled Transit' to "magical statuses"
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Chris Sharp [Mon, 22 Aug 2016 12:58:24 +0000 (08:58 -0400)]
LP#1613374 - Make 'Canceled Transit' status holdable and OPAC-visible.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Chris Sharp [Wed, 24 Aug 2016 18:12:04 +0000 (14:12 -0400)]
LP#1613374 - Set item status to 'Canceled Transit' when transit is canceled.
I opened a separate bug report on this issue (bug 1613374) before realizing
bug 1306666 was reported. This commit creates a new 'Canceled Transit' status
that signals to staff what happened to an item when a transit is aborted/canceled.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Conflicts:
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Transit.pm
Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>