Placing Multiple Holds in My List Leads to Error

Bug #1687319 reported by Jason Stephenson
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Confirmed
Medium
Unassigned

Bug Description

Evergreen Version: Master as of 2017-04-28 @ 8:00 am.
Postgres Version: 9.5.6
O/S: Ubuntu 16.04.2 Xenial Xerus

When I attempted to place a hold for 2 items from My List in the above system, the hold placement worked, but the "Continue" linke took me to a non-existent URL that returned a 404 error.

In my specific case, the link is, where xenial is the hosts entry for a local test VM:

https://xenial/eg/opac/ARRAY(0x5650078c9e18)

The exact steps that I followed to cause the above:

I loaded the Concerto data set on my test vm.

I logged in as patron Leon Anderson.

I did a search for Strauss.

I added the two items to a new My List named Strauss.

I went to My Account -> My Lists and expanded the Strauss list.

I checked the check box to select all items from the list.

I clicked the "Go" button with the default action of "Place Hold" selected.

I placed the hold by clicking "Submit" without changing anything from the defaults.

On the response page that indicated that the holds were placed successfully, I clicked the "Continue" link which took me to the above URL.

I repeated these steps with 3 items by Beethoven to make sure it was not just a fluke. A similar, but different URL came up that also returned a 404 error.

I have not looked into the code for the actual cause but I suspect, the list of bib records is being used directly to generate the return URL.

Changed in evergreen:
status: New → Confirmed
Revision history for this message
Terran McCanna (tmccanna) wrote :

The "Cancel" link (which only displays if there is an error) also breaks when placing multiple holds at once from a list. Example URLs that are generated for the links.

CANCEL:
https://demo.evergreencatalog.com/eg/opac/ARRAY(0x7fc20b49f148)

CONTINUE:
https://mlnc2.noblenet.org/eg/opac/ARRAY(0x7f55a88dcf98)

These links are generated using [% CGI.param('redirect_to') || CGI.referer | html %] - it looks like CGI.param('redirect_to') is what is causing the array link that doesn't work. If I delete that and just use CGI.referer, the links are valid, but they're still not ideal because they only go back to the previous page (the hold form) rather than to the list (which is two pages back).

If I replace CGI.referer with javascript:history.go(-2); then it goes two pages back and takes me to the list (this also still works when placing single holds from the search results page or record details page) as I expect it to, but that requires javascript to be enabled in the browser so it's not ideal either.

tags: added: holds tpac
tags: added: lists
Revision history for this message
Andrea Neiman (aneiman) wrote :

Adding a note that Mary J. & I just saw this as well, both using "continue" and "cancel".

Tested on three different test servers with the same result -- 2.12.8 (MassLNC), 3.0.0 (Equinox), and 3.0.3 (Equinox).

Changed in evergreen:
importance: Undecided → Medium
Revision history for this message
Jane Sandberg (sandbergja) wrote :

I'm not seeing this on 3.2.1 -- can anybody confirm that it is still a problem in 3.2 or master?

Revision history for this message
Terran McCanna (tmccanna) wrote :

I'm still seeing this on the 3.2.2 community demo server.

tags: added: opac
removed: tpac
Andrea Neiman (aneiman)
tags: added: mylists
removed: lists
tags: added: circ-holds opac-lists
removed: holds mylists
Revision history for this message
Garry Collum (gcollum) wrote :

This no longer seems to be an issue in the Bootstrap opac. Tested in master 3.9ish.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.