LP 1833284: Option to send database id in LookupUser response
[working/NCIPServer.git] / lib / NCIP / ILS / Evergreen.pm
index 3fc3ff1..e0f3cc4 100644 (file)
@@ -164,9 +164,12 @@ sub lookupuser {
     my $userdata = NCIP::User->new();
 
     # Use the user's main card as the UserId.
+    my $idType = ($self->{lookupuser_send_database_id}) ? 'UniqueID' : 'Barcode';
+    my $idValue = ($self->{lookupuser_send_database_id}) ? $user->id()
+        : $user->card->barcode() || $barcode;
     my $id = NCIP::User::Id->new({
-        UserIdentifierType => 'Barcode',
-        UserIdentifierValue => $user->card->barcode() || $barcode
+        UserIdentifierType => $idType,
+        UserIdentifierValue => $idValue
     });
     $userdata->UserId($id);
 
@@ -2917,6 +2920,11 @@ sub _init {
             }
             push(@{$self->{blocked_profiles}}, $pgt) if ($pgt);
         }
+        if ($self->{config}->{patrons}->{lookupuser_send_database_id}) {
+            $self->{lookupuser_send_database_id} = 1;
+        } else {
+            $self->{lookupuser_send_database_id} = 0;
+        }
     }
 
     # Load the bib source if we're not using precats.