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 [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.
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>
Bill Erickson [Mon, 16 Nov 2015 19:48:23 +0000 (14:48 -0500)]
LP#1516757: ensure that SIP2 returns DOB correctly
Parse dates of birth using the local timezone to ensure that the date in
the database will match what is sent to SIP clients. Otherwise, the
date will be parsed as UTC and may result in the DoB value being offset
by one day in the SIP response.
To test
-------
[1] Fire up a SIP client of some sort and retrieve a patron record;
verify that the patron's date of birth is correct, and not
offset by one day.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
LP#1531976: fix bringing up Mesage Center and Triggered Events
This patch fixes a bug in the XUL staff client where
using Other -> Triggered Events from the patron page,
then Other -> Message Center, only brings up the Triggered
Events page in both cases (and vice versa).
This patch works by preventing the deck code from thinking they are
the same page, despite both using the browser wrapper as their base URL.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jason Boyer [Wed, 2 Sep 2015 20:20:13 +0000 (16:20 -0400)]
LP#1491571: Ignore Case when Checking PW Reset email
Emails are not passwords and are not case sensitive;
while it is a good idea to require patrons to prove
they know the address associated with their account
it is not cool to deny them because they don't know
the capitalization of the value in the database.
Signed-off-by: Jason Boyer <jboyer@library.in.gov> Signed-off-by: Ben Shum <ben@evergreener.net>
Chris Sharp [Mon, 30 Nov 2015 14:48:26 +0000 (09:48 -0500)]
LP#1206936 - Fix wrong billing info in money.transaction_billing_summary
The money.transaction_billing_summary view was showing the wrong
last billing type and last billing note for certain transactions.
This fix, from Dan Scott, in turn from Mike Rylander, recreates
that view so that it depends on the speedier and more accurate
money.materialized_billable_xact_summary view.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Remington Steed [Wed, 16 Dec 2015 20:46:17 +0000 (15:46 -0500)]
LP#1526546 Sort copies by part label in holdings maint.
This commit improves the sorting of copies on the Holdings Maintenance
screen in the XUL-based staff client. The previous code sorted the
copies by their barcodes after retrieval. This commit moves the sorting
logic into the search call and adds logic to first sort by the part
label sort key.
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Dan Wells <dbw2@calvin.edu>
blake [Wed, 23 Dec 2015 20:20:40 +0000 (14:20 -0600)]
LP#1466990: Detailed search results shows parts for items that dont have parts
The part_label variable needs to be reset between iterations. The variable was still set
and bled from copy to copy. Testing this will require a search with details turned on.
The search result set needs to include a bib that has copies with parts (with at least
one copy invisible) and another bib that has copies without parts.
Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Ben Shum <ben@evergreener.net>
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>
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>
Mike Rylander [Thu, 3 Dec 2015 21:13:09 +0000 (16:13 -0500)]
LP#1522538: Improper detection of jtitle search type
Before this change, the system would only check the first qtype URL parameter
to see if it needed to apply the journal title "bib_level(s)" filter. Instead
it should check each qtype in turn while it turns an advanced search into a
simple search string. Here the code is moved into place to accomplish that.
To test, load all test datasets into a fresh database. Perform an advanced
search on journal title for "proceedings" (no quotes) using the second search
input row. Before this commit, two records are retrieved. After, only one
is retrieved.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Jason Stephenson [Tue, 24 Nov 2015 18:57:33 +0000 (13:57 -0500)]
LP 1519465: POs with spaces in the name cause EDI problems.
This is a small modification to the regular expression for parsing
the id from the edi line item fields in EDIReader.pm that allows the
ids to parse correctly when the PO name contained a space or spaces
in it. This change was suggesting by Bill Erickson (berick) in
http://irc.evergreen-ils.org/evergreen/2015-11-24#i_216736
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Jason Boyer [Fri, 4 Dec 2015 06:17:21 +0000 (01:17 -0500)]
LP1522686: Force SSL for Web Staff, Add Basic Redirect for Staff URL
1 minor change, 1 less minor change.
First, add a simple redirect for staff that forget to enter the
final '/' at the end of <server>/eg/staff/.
Second, and most importantly, force all connections to the web
staff client to be redirected through an HTTPS connection. By
default the system would accept whichever connection type you
enter by hand, and fewer and fewer people actually enter the
protocol specifier these days.
Signed-off-by: Jason Boyer <jboyer@library.in.gov> Signed-off-by: Ben Shum <bshum@biblio.org>
Galen Charlton [Wed, 30 Dec 2015 16:00:26 +0000 (11:00 -0500)]
LP#1530158: ensure that Business::OnlinePayment::PayflowPro is installed
Business::OnlinePayment::PayflowPro is a Perl module required if
the user wants to use PayflowPro as a credit card processor; without
it, attempts to make payments in TPAC using that processor will fail
with an internal server error.
This patch ensures that the module will get installed on Debian,
Ubuntu, and Fedora.
Strictly speaking, the Perl module is strictly optional, as
Business::OnlinePayment uses lazy loading for its drivers, but this
patch is making the assumption that its easiest all around if
we just install all dependencies that an Evergreen application
server might need.
To test
-------
[1] Install or upgrade Evergreen, then run settings-tester.pl to
verify that the module is installed.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Dan Wells [Thu, 13 Feb 2014 16:56:19 +0000 (11:56 -0500)]
LP#1526543 Truthiness check for reset_password is flawed
We expect boolean options in config.tt2 to be 'true' or 'false',
but the code was simple asking 'IF reset_password', which is true
for either value.
Instead, match on the string (as we do in other places).
To test:
- Load the stock catalog login page
- Notice the "Forgot your password?" link staying no matter which way
'reset_password' is set in config.tt2
- Apply patch, and change 'reset_password' value in config.tt2 to 'false'
- RESULT: Password reset link doesn't show up
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Ben Shum <bshum@biblio.org>
Josh Stompro [Wed, 25 Nov 2015 19:36:08 +0000 (13:36 -0600)]
LP#1519925 - Allow MARC Federated Search to search UPC index of local catalog.
If a organization added UPC search for certain Z39.50 servers then the UPC search box
would display in the MARC Federated Search interface, but the local catalog would
not be searched. This adds the ability to search the local catalog "Evergreen Catalog"
UPC index from that interface.
Confirm the Issue:
1. To trigger the initial problem you need a Z39.50 server setup that includes a UPC
Search. For OCLC the following Z39.50 attributes add UPC searching.
Name:upc, Label:UPC, Code:1007, Format:4, Truncation:0
2. Now the MARC Federated Search should include a UPC search option. Try searching
for a UPC that exists in the local catalog. Nothing should come up.
After patch applied:
1. Now if you search for a UPC in the MARC Federated Search that you know exists,
it will show up.
Signed-off-by: Josh Stompro <stomproj@larl.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Kathy Lussier [Wed, 18 Nov 2015 21:24:14 +0000 (16:24 -0500)]
Docs: Missed some acknowledgements in the 2.9.1 point release notes
Missed a few ackwnowledgements in the release notes. Apologies to those who
I missed. Also added bshum since he made a doc change after the release notes
were merged.
Kathy Lussier [Wed, 18 Nov 2015 00:13:57 +0000 (19:13 -0500)]
Adding bug fixes and acknowledgements to 2.9.1. Release Notes
The structure of these point release notes is a little different from what
we did with the 2.8 series. I restructured the headings a bit so that there
is just the one level one header. The two headers in the 2.8 release notes
led to a confusing outline.
Also, I'm adding acknowledgements for each point release rather than adding the
entire batch at the bottom of the file. There are two reasons for this change:
1. The release notes in the official documentation are broken up into different
sections, whereas the ones on the downloads page are available all on one page.
In the official docs, it appeared as if everyone being acknowledged had
contributed to the .0 release, when, in actuality, some had contributed patches
in other point releases. By adding acknowledgements to every point release
section, it is clear who contributed to which release.
2. Consistent contributors get acknolwedgement for every point release they
contribute to, which is a nice thing to do.
Because phrases are subqueries, we need to look at the top of the parse tree
when looking for modifiers for cover density. This is because modifers are
normally only allowed at the top of the parse tree (or in the floating sub-
query). We do that by asking the plan's QueryParse for it's reference to its
parse_tree member, which is always the top of the parse tree in QP.
Included in this commit is a small change to the QP testing script to
facilitate testing of this fix.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
This little patch will open up the acq copy location dropdown UI
to include other library's copy locations outside of the workstation
registration. When the user permissions are scoped to more branches.
Steven Chan [Thu, 19 Sep 2013 19:51:35 +0000 (12:51 -0700)]
Fix LP1175711, OPAC can't renew item on booking resource list
A test sequence to show the behaviour before and after the fix:
1. Using staff client, check out an item to test account.
2. Go to Copy Details on the OPAC, click Book Now, and cancel the form;
the side effect is to put the item on the Resource list.
3. Using the OPAC on a web browser, log in with test account.
4. Go to Items Checked Out, select the item in the list and click Renew
Selected Items.
Before the fix, we saw the OPAC spin forever, and we saw the Javascript
console of the web browser log the error noted in previous comments.
With the fix, we see an error prompt saying, 'The system is unable to
renew the selected item at this time. This usually means the item is
needed to fulfill a hold. Please see a librarian for further help.'
Note: A patron with the normal group of permissions will not be able to
renew an item on resource list.
The fix is to check for an error object emitted by the function
Booking.pm/reservation_list_by_filters(), and to propagate it back to
the client, by returning a call to bail_on_events().
We also clarify the coding of the function's parameter list and how the
function checks for mandatory parameters.
Jason Stephenson [Mon, 16 Nov 2015 21:15:22 +0000 (16:15 -0500)]
LP 1516786: 0938 Upgrade Script ends in END and not COMMIT.
Change the END; on the last line of 0938.data.some_rda_attributes.sql
to COMMIT; for reasons of consistency and to avoid issues when wrapped
in larger upgrade scripts using the make release script.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>
It was previously possible to delete reserved rows in
the acq.cancel_reasons table via the UI. We take a belt
and suspenders approach here:
1) Grey out the checkboxes beside cancel reasons with an
ID lower than 2000.
2) Create a trigger on the acq.cancel_reason table that
prevents deletion of rows with an ID lower than 2000.
The trigger executes a new generally available function
for use in similar situations in the future.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Galen Charlton [Thu, 29 Oct 2015 15:39:16 +0000 (15:39 +0000)]
LP#937789: various improvements to logical deletion of parts
This patch ensures that when a monograph part is marked as
deleted, that mappings between it and its copies are also
removed, similar to the previous behavior of the cascade
on delete.
This patch also adds some pgTAP tests and ensures that
unapi.bmp() and unapi.holdings_xml() get updated during upgrade.
To test the fix for this bug:
[1] Apply the patches.
[2] Create a monograph part on a record, then delete it. Verify that
it no longer shows up in the parts maintenance interface, but that
a row in the biblio.monograph_parts table still exists with the
deleted flag set to true.
[3] Create another monograph part on the same record.
[4] Create a new volume/copy and assign the part created in step
3 to it. Verify that the part shown in step 2 is *not*
included in the XUL part selector.
[5] Place a part-level hold. Verify that the hold request
is displayed correct in both the public catalog and the staff
interface.
[6] Delete the part created in step 3.
[7] Verify that viewing the list of the patron's holds in the XUL staff
client doesn't result in any 'network errors'. Also verify that
the hold request is still displayed in patron's view in the public
catalog.
[8] Using SQL or some other means, set the expire_time and
prev_check_time of the test hold request to a couple days in the
past, then run the hold targeter. Verify that the hold gets
cancelled for lack of a suitable copy to fill it.
Mike Rylander [Thu, 7 Jun 2012 18:54:24 +0000 (14:54 -0400)]
LP#937789: fake-delete support for monograph parts
Unlike copies, call numbers, and bibs, parts can be directly removed from the
database. This has a negative impact on holds, in that the holds become not
just orphaned, but broken entirely. With this commit we bring part holds to
parity with other hold types such that they can be system-canceled when their
target goes away. This will avoid spurious UI-level errors to staff.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Ben Shum <bshum@biblio.org>
[1] Install the translation for a language that uses
non-Latin-1 characters, such as Russian.
[2] Start the XUL staff client and open the reports
interface. Note that labels are mangled.
[3] Apply the Apache configuration changes in this patch,
reload Apache, clear cache in the staff client, and
reload the reports UI. The labels should now be
displayed correctly.
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Josh Stompro [Sat, 31 Oct 2015 15:38:41 +0000 (10:38 -0500)]
LP#1511828: sort proximities numerically when targeting holds
The hold targeter had three instances of using lexical sorting
rather than numerical sorting.
Two of the instances affected hold targeting if proximity values were
over 9. Proximity values were being sorted lexically. For instance,
1,2,5,11,15,100,120 was sorted as 1,100,11,120,15,2,5, causing
interesting hold targeting results. Normally proximity doesn't go
that high so it isn't a problem, but we were using proximity adjustments
to strictly order locations so each location had a different proximity,
driving the numbers above 9.
One instance wasn't causing any current issue but could cause problems in
the future if more best hold selection sort options are added to bring the
total number of sort options over 9.
Also included are some changes to reduce warnings in the logs
suggested by Bill Erickson. The sorting problem was found by
Galen Charlton, thanks Galen.
Testing Notes - to trigger this issue you need to have adjusted
proximities over 9.
1. Use proximity adjustment rules to add a +10 proximity adjustment to
one item circ lib, Branch A and a +2 proximity adjustment to the
item circ lib Branch B.
2. Find a title with a copy at Branch A and B. Place a hold with a
pickup location of Branch B.
3. The copy at Branch A should get targeted since it has a proximity of
12-14 (10+normal proximity) and Branch B has a proximity of 2
(2+normal proximity). 12 gets sorted before 2 lexically.
4. After the fix the copy at Branch B should get targeted since 2
is sorted before 12.
Josh Stompro [Thu, 11 Jun 2015 01:12:10 +0000 (20:12 -0500)]
LP#1400801 - Updated email validation regex for Org Unit admin gui
Grabbed the example of a simplified RFC 5322 email regex from
http://www.regular-expressions.info/email.html and lightly modified it
for case sensitivity and removed the "&" character from the localpart allowed
characters, which causes a 500 server error for some reason.
This matches many more of the valid localpart special characters.
Signed-off-by: Josh Stompro <stomproj@larl.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Adam Bowling [Mon, 19 Jan 2015 17:05:19 +0000 (12:05 -0500)]
LP#1406387 Fix for Holds Placement Advanced Options
In the staff client, when placing a hold and clicking
Advanced Hold Options, the barcode input will populate
with the staff member's barcode if it was previously
empty, regardless of whether the radio input for the
hold was specified for a patron or the staff member.
This patch corrects that behavior, and also populates
the input radio on load after clicking Advanced Hold
Options.
Signed-off-by: Adam Bowling <abowling@emeralddata> Signed-off-by: Michael Peters <mpeters@emeralddata.net> Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1340852: Retain search params for copy location groups
The order in which we determined what to 'selected' in the "Library"
dropdown put the resolved locg first (which allows for shortnames, e.g.
BR1). That only gives us half the location group though, which is why
it was bumping up a level. Now, if we have a location group selected,
it will use that first (since they don't have shortnames); the remaining
select order will be the same.
Yamil Suarez [Mon, 22 Jun 2015 18:33:28 +0000 (14:33 -0400)]
LP#1467634: Hide saved searches from screen readers for non-staff client
This commit will only allow screen readers to see the saved searches for
users that are logged through XUL client.
Assuming that a screen reader can be attached to the XUL client.
It should also work for a user logged in through the web staff
client that is using a screen reader.
To test
-------
[1] Apply the patch, then perform a search in the public catalog and
view the HTML source. Verify that there's no "sr-only" heading
for "Saved searches".
[2] Set the opac.staff_saved_search.size library setting to a non-zero
value.
[3] In the web staff client, perform a search using the embeded OPAC;
verify that the recent searches list is displayed.
[4] Repeat step 4 in the XUL client.
Galen Charlton [Wed, 7 Oct 2015 17:49:19 +0000 (17:49 +0000)]
LP#1503782: fix horizontal scrollbar in MARC import queue inspector
In the XUL client (and webstaff), attempting to view the contents
of a MARC record import queue displays a table that, due to
its width, will almost always have a horizontal scrollbar. However,
attempting to actually use the scrollbar often causes the
focus to jump to the top of the table instead. This patch
fixes that.
To test:
[1] Create a bib queue that has at least a dozen records or so.
[2] Inspect the contents of the queue, scroll to the bottom of
the table, and interact with the horizontal scrollbar.
[3] Observe that doing so typically results in jumping up
to the top of the table.
[4] Apply the patch, clear cache and refresh, and try step #2
again.
[5] This time, the horizontal scrollbar should act normally.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Galen Charlton [Thu, 29 Oct 2015 19:30:31 +0000 (19:30 +0000)]
LP#1406786: fix remapping copies during parts merge
This patch fixes an issue with how copies are mapped
on the target part when using "Merge Selected" in the
Monograph Parts interface.
To test:
[1] Create some monograph parts on a record and assign
some copies to use them.
[2] Use the merge parts function to collapse all of the
parts created in step 1 onto a single part.
[3] Verify that the copies whose original parts were removed
are now mapped onto the part that was the target of the
merge.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
An unclosed phrase search that has a modifier can cause QueryParser to
enter an infinite loop, tying up open-ils.storage backends.
Examples of such searches include:
-"cats and dogs
subject:+"physical chemistry
This patch fixes the bug by allowing the end of the query string
to terminate a phrase (in addition to a quotation mark).
To test:
[1] Verify that the t/21-QueryParser.t unit test passes
[2] To test in a *development* database, before applying the patch
run one of the example queries. Observe that no
results are returned, and that one of the open-ils.storage
drones is running at 100% CPU.
[3] Apply the patch and restart the open-ils.storage service.
[4] Try the query again; this time, it should return results
immediately without causing an open-ils.storage drone to
peg a CPU.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Dan Scott <dscott@laurentian.ca>
LP 1502156: Fix marc_export error when dumping authorities.
There is a chance that marc_export will attempt to call a nonexistent
field on MARC::Record if an error occurs while exporting authority
records. The bug could only be triggered if a conversion error
occurred while exporting the authority as either MARCXML or USMARC.
The fix is to rename a couple of variables in the Marque::Authority->next
method to be more like those used in Marque::Biblio->next. This will have
the side effect of making marc_export easier to maintain, since the
variables used in one method will now have the same meaning as those
in the other.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Remington Steed [Fri, 2 Oct 2015 13:41:39 +0000 (09:41 -0400)]
Docs 2.9: Add summary of Web Client changes
This commit adds the Web Client release notes summary to the appropriate
docs section. It also updates the wording and links regarding the
completed UI Style Guide internship.
Next we need to copy the Cataloging content into the web client section
and provide web client screenshots.
Dan Scott [Thu, 1 Oct 2015 20:15:12 +0000 (16:15 -0400)]
Doc build: link to the right media file
The screenshot for the list of call numbers is a PNG image, not a JPEG
image, so referring to it with the appropriate extension will make it
show up in the docs and enable the epub and PDF builds to successfully
complete.
Dan Scott [Thu, 1 Oct 2015 20:13:45 +0000 (16:13 -0400)]
Doc build: update the implicit ID for release notes
The implicit ID for a given heading changes each release as we update
the release notes, so bump 2.8 to 2.9 so that the reference to the ID
can be resolved.
Dan Scott [Thu, 1 Oct 2015 20:11:57 +0000 (16:11 -0400)]
Doc build: use XML-compliant IDs
Doc builds that depend on an intermediate XML transform (epub, PDF) also
need to use IDs that comply to the XML standard. In this case, numbers
are not valid NameStartChars:
http://www.w3.org/TR/REC-xml/#NT-NameStartChar
Dan Scott [Thu, 1 Oct 2015 20:10:41 +0000 (16:10 -0400)]
Avoid duplicate IDs in doc build
Defining the same ID twice in the same document results in broken builds
that depend on an intermediate XML transform (epub, PDF), so redefine
the second ID in this document.
Documentation for negative balance settings in 2.9. The updates in this branch
include:
* Updates of the circulation, patron record, and library settings sections
to reflect the new features contained in the negative balance work.
* General updates, consolidation, and re-organization of some components
of the billing section.
A new understanding and confiuring billing section is still to come, but this
branch brings existing documentaiton up to date.
Release Notes: Move/copy relevant sections to Upgrade Notes
This commit moves two sections from "New Features -> Administration ->
Upgrade Notes" to the main level "Upgrade Notes" section, which had been
accidentally left empty and was causing AsciiDoc-to-ePub conversion
errors. This commit also copies two other sections to the main "Upgrade
Notes" section, since they contain information relevant to the upgrade
process.
Chris Sharp noticed another ERROR: cannot ALTER TABLE
"record_attr_definition" because it has pending trigger events
with the 2.8.4 to 2.9.0 upgrade script. I have rearranged the
transactions so that there are now 3.
1. One for the initial inserts and other changes up to 0937.
2. One for the two alter table statements in 0937.
3. One for 0938 to the end (0944).
This resolves the issue and works for me on an upgrade from a
clean 2.8.4 installation.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Thu, 17 Sep 2015 19:12:40 +0000 (15:12 -0400)]
LP 1496977: Duplicate Code in OpenILS::Application::Cat::AssetCommon
It looks like two lines of code got duplicated in commit e2f6cca0 in
AssetCommon. This duplication can lead to data loss for the function
update_fleshed_copies. It also lead to the following warning when
you use OpenILS::Application::Cat::AssetCommon in a script:
"my" variable $sc_entries masks earlier declaration in same scope at
/usr/local/share/perl/5.18.2/OpenILS/Application/Cat/AssetCommon.pm
line 371.
After this patch, the warning disappears.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>