From 27e91a359e392f4e2049efd165743bc0ba7d4c04 Mon Sep 17 00:00:00 2001 From: Jeff Davis Date: Fri, 20 Mar 2015 15:17:47 -0700 Subject: [PATCH] LP#1434728: make password_required configurable per library Signed-off-by: Jeff Davis --- src/od_api.coffee | 4 ++-- src/od_config_template.coffee | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/od_api.coffee b/src/od_api.coffee index d29f717..4968c80 100644 --- a/src/od_api.coffee +++ b/src/od_api.coffee @@ -295,7 +295,7 @@ define [ un = session.prefs.barcode or session.creds.un() # Use the password that was stored in session cache or a dummy value - pw = session.creds.pw config.password_required + pw = session.creds.pw config.password_required(session.prefs.home_library) # Remove the stored credentials from cache as soon as they are # no longer needed @@ -310,7 +310,7 @@ define [ grant_type: 'password' username: un password: pw - password_required: config.password_required + password_required: config.password_required session.prefs.home_library scope: scope # Complete login sequence if the session cache is invalid diff --git a/src/od_config_template.coffee b/src/od_config_template.coffee index 157ea78..dd40599 100644 --- a/src/od_config_template.coffee +++ b/src/od_config_template.coffee @@ -39,8 +39,14 @@ define [ # Define the mapping function between long name and authorization name authorizationname: (id) -> longname[id] - # Define whether a user password is required to complete patron authentication - password_required: 'false' # or 'true' + # Define whether a user password is required to complete patron authentication. + # This function takes the home library's long name as a parameter. + # You can use this parameter to lookup whether the library requires a password. + # If all your libraries do (or don't) require a password, modify this function + # to always return 'true' (or 'false'). + password_required: (libraryname) -> + no_password = [ 'long name one' ] + if libraryname in no_password then return 'false' else return 'true' # Main base URL (used for direct links to content provider's site) baseURL: 'http://example.com/ContentDetails.htm' -- 2.11.0