Allow Username In SIP2 Patron Identifier

Bug #1889628 reported by Jason Stephenson
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Wishlist
Unassigned

Bug Description

CW MARS recently enabled the Instant Digital Card feature in Overdrive, and we found a lot of patrons, who already had library barcodes, signing up because it was easier for them to input their phone number than to look up their library card number.

Since Overdrive supports logging in with a barcode or username, and does so with other ILS products, our members asked if we could support patrons logging into Overdrive with the Evergreen username as well. We think that it will be easier for patrons to remember their usernames, and that this will lead to fewer requests for Instant Digital Cards in Overdrive.

summary: - Allow SIP2 Authentication with Username
+ Allow Username In SIP2 Patron Identifier
Revision history for this message
Jason Stephenson (jstephenson) wrote :

My original title for this bug was misleading and came from internal email exchanges as did my initial summary. Basically, we want to allow a patron to use their OPAC username with SIP2 services, and here is a branch that does that:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/dyrcona/lp1889628-usrname-in-sip2-patron-id

Changed in evergreen:
assignee: Jason Stephenson (jstephenson) → nobody
milestone: none → 3.6-beta
tags: added: pullrequest
Revision history for this message
Bill Erickson (berick) wrote :

Reviewed code, no testing yet. One suggestion, since we can specify a workstation for each SIP login (<account /> in oils_sip.xml), I think get_ou_setting() should check for a $sess->ws_ou value first, then fall back to home_ou.

Revision history for this message
Jason Stephenson (jstephenson) wrote :

Bill, thanks for the suggestion, I've pushed another commit that makes the change you requested. It now gets the home_ou and then replaces that with the ws_ou if it is set. I also added ref() checks on the home_ou and ws_ou in case they have been/will be fleshed.

Bill Erickson (berick)
Changed in evergreen:
assignee: nobody → Bill Erickson (berick)
status: New → Confirmed
Revision history for this message
Bill Erickson (berick) wrote :

I did a series of tests all worked well. As I was doing so, it occurred to me the feature as-is would cause problems in our environment, because our barcode regex does not cover all valid barcodes, many of which need SIP.

Assuming we're not alone, I added a commit which requires the feature to be turned on in the oils_sip.xml file so people are not surprised by it. This has the added benefit of avoiding a new API call per login for those that don't use it.

New patch and sign offs for Jason's work pushed:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/berick/lp1889628-sip-login-username

Changed in evergreen:
assignee: Bill Erickson (berick) → nobody
Revision history for this message
Jason Stephenson (jstephenson) wrote :

Thanks again for looking, Bill.

I was trying to avoid adding another setting, but I'm not opposed to doing so. I've tested the setting with two accounts with different implementation configs, one set to allow usernames and the other not. The setting works as expected.

I've pushed a signoff branch to user/dyrcona/lp1889628-usrname-in-sip2-patron-id-signoff in the working repository:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/dyrcona/lp1889628-usrname-in-sip2-patron-id-signoff

It has the 3 commits from the previous branches and was rebased on master.

If no one has any additional suggestions or objections, I'll push this to master on Friday, 8/28.

tags: added: signedoff
Revision history for this message
Jason Stephenson (jstephenson) wrote :

I have pushed the changes to master. Thanks, Bill!

Changed in evergreen:
status: Confirmed → Fix Committed
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.