web client: You can checkout materials to patrons retrieved with an inactive card

Bug #1621799 reported by Kathy Lussier
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Medium
Unassigned

Bug Description

In the xul client, if you retrieve a patron with an inactive barcode, the Barcode entry box on the checkout screen is disabled, making it impossible to check material out to that patron.

In webby, the Barcode entry box is active, and staff is able to check out material to the patron using the inactive card.

Revision history for this message
Billy Horn (bhorn) wrote :

I have been looking into this issue and I've noticed the logic seems to be there to make this work. I was working with a test patron that had overdues and whose card shouldn't have been active but it kept coming up with the issue mentioned. I decided to edit the patron and look at their information and noticed they were still marked as active, and when I toggled the option and saved, the barcode on checkout was properly disabled.

So I'm wondering if the problem is actually that the the active state isn't properly disabled when a patron becomes deactivated.

Changed in evergreen:
assignee: nobody → Billy Horn (bhorn)
Revision history for this message
Kathy Lussier (klussier) wrote :

Hi Billy,

No, this is something different. I was testing a use case where the patron loses a library card. The steps staff typically take at this point is to edit the patron record and then replace the barcode with a new one. The first barcode stays on the patron record, but becomes inactive.

Let's say the patron returns to the library with the old, lost card. If the patron is retrieved with that barcode, the barcode entry box should be disabled.

Revision history for this message
Bill Erickson (berick) wrote :

I believe this is referring to the actor.card.active field, not the actor.usr.active field. Simplest way to create an inactive card is to use the "Replace Barcode" action in the patron editor. The replaced barcode will be set as active = false.

The web staff checkout.js code is checking (among other things) the active state of the user's main/primary card, but it's not checking the activate state of the card used to retrieve the user.

Bill Erickson (berick)
Changed in evergreen:
status: New → Confirmed
Revision history for this message
Billy Horn (bhorn) wrote :

I have pushed a commit here http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/bhorn/lp1621799-disable-checkout-for-inactive-patrons

This adds a function fetchedWithInactiveCard to activate the disable checkout if an inactive card was used

Billy Horn (bhorn)
tags: added: pullrequest
Changed in evergreen:
assignee: Billy Horn (bhorn) → nobody
Bill Erickson (berick)
Changed in evergreen:
milestone: none → 2.11.1
milestone: 2.11.1 → 2.next
Revision history for this message
Kathy Lussier (klussier) wrote :

Thank you Billy. Works for me! Picked to master for inclusion in 2.12. Congrats on your first commit to Evergreen!

Changed in evergreen:
status: Confirmed → Fix Committed
Changed in evergreen:
milestone: 2.next → 2.12-beta
Changed in evergreen:
status: Fix Committed → Fix Released
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.